Git Post接收挂钩无法识别参数
我使用ssh访问远程git存储库。我在hooks目录中添加了这样一个简单的post-receive脚本:Git Post接收挂钩无法识别参数,git,Git,我使用ssh访问远程git存储库。我在hooks目录中添加了这样一个简单的post-receive脚本: #/bin/sh REPO="$1" REV="$2" echo $REPO $REV >> /var/log/gitlog 我在本地PC和push中多次更改了代码,但在/var/log/gitlog中没有看到任何内容。我已经检查了post receive的许可。其文件掩码已设置为777。所有用户都可以在控制台上执行脚本。这可能是因为挂钩(post receive)不带任何参数
#/bin/sh
REPO="$1"
REV="$2"
echo $REPO $REV >> /var/log/gitlog
我在本地PC和push中多次更改了代码,但在
/var/log/gitlog
中没有看到任何内容。我已经检查了post receive的许可。其文件掩码已设置为777。所有用户都可以在控制台上执行脚本。这可能是因为挂钩(post receive
)不带任何参数
见:
远程存储库上的git receive pack调用此钩子,在本地存储库上完成git推送时会发生这种情况。它在更新所有引用后在远程存储库上执行一次
对于接收操作,此钩子执行一次它不接受任何参数,但获得的信息与预接收
钩子在其标准输入上的信息相同
提到:
您必须使用read
命令
你说得对。我不能用1美元来获取参数。我从SVN hooks复制了这个脚本,并解决了这个问题。使用“read oldrev newrev refname”是正确的方法。谢谢!
#!/bin/sh
read oldrev newrev refname
...