[英]Git post receive hook is not running
我搜索了所有问题,但仍然无法回答我的问题。
他们中的大多数建议设置权限,以便可以执行文件。 完成-设置为777。
传输协议必须不是http,而是ssh。 我希望是这样,在git扩展中,我检查了浏览存储库-它以git@bitbucket.org开头,因此应该是ssh协议。
接收后简直是这样的:
#!/bin/sh -x
echo 'test';
git log -1 HEAD --pretty=format:"%x09%ad%x09";
touch ~/repos/develop/dashboard/test.txt;
因此,当我运行git pull时,应该执行这些命令。
我试图将post-receive重命名为post-checkout-然后在调用git checkout时执行了该操作。
但是用git pull-后接收就像被忽略了。
还有一些提到的noexec分区。 但是我希望,如果后结帐有效,那么这也必须起作用,因为后结帐也需要执行。
我还应该检查什么?
更新:
我将告诉您为什么选择此钩子,也许您可以提出另一种建议。
我想在git pull上调用一些链接,该链接会将当前日期保存到数据库中。 因此,当用户打开网站时-他可以看到该网站的最新更新时间,因此我不需要手动设置每次网站更新的时间。
更新:好的,我看到有趣的一行:
这些脚本在推送到服务器之前和之后运行。
我从编写代码的计算机上推送到服务器。 我的ubuntu服务器如何知道我已推送? 我是否应该将接收后的文件放入要编程和推送的计算机中? 我可以尝试,但是以某种方式看来它不会有所帮助。
更新
尝试将后接收放入我用来推送的计算机中,并且符合我的预期-在ubuntu服务器或计算机中均未创建test.txt。
更新
我如何实现使用合并后挂钩的。 这是客户端类别。 我的服务器相对于它来说是一个客户端。 因此,当我拉到服务器时,合并完成,因此我的脚本得以执行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.