我是git的新手。我在服务器上创建了一个简单的git repo。我的系统中有一个本地git仓库。提交后,在推送到主仓库之前,我推送到服务器仓库。在服务器仓库中,以下代码被添加到钩子/后接收
中
date >> /home/d.txt
当我尝试使用sh post-receive
通过ssh将脚本运行到服务器时,脚本运行正常。但是当我进行本地git推送时,脚本没有运行。即未插入日期。
接收后的权限设置为-rwxr-xr-x 1 root root
更新:我将代码echo "uploading"
插入到hooks / post-receive文件中,并通过执行本地git的chmod +x hooks/post-receive
来更改权限。当我执行本地git push时,不会触发post-receive文件。
答案 0 :(得分:0)
需要调用post-receive
...即删除.sh后缀。
答案 1 :(得分:0)
确保您的接收后脚本位于服务器的.git / hooks中,而不是客户端。
答案 2 :(得分:0)
您需要确保收件后脚本的所有者是用户 git 。并且还检查 git 帐户下的脚本,可能是git用户没有写入 /home/d.txt 的权限