我的网络服务器上有一个 PHP 脚本 git.php,只有几行,其中一行使用 shell_exec() 来运行
'git pull ssh://user@X.com/repo.git'
(请注意,您无法推送到网络服务器,这已禁用且无法启用。) 如果您转到 example.com/git.php,这一切都可以正常工作。脚本运行并且 repo 得到更新。(回购在另一个不相关的服务器上)
我想做的是使用我的 post-receive 钩子从我的 git 服务器更新我的 web 服务器上的 git repo。我正在使用 ssh 进行连接,所以钩子应该(并且确实有效,我已经测试过)有效,并且很确定没有权限问题。
我的问题是如何编写“接收后”脚本?
我尝试了一些没有运气的事情,我的脚本目前只有 1 行长,看起来像这样
curl -d "action=post-receive&log=1" http://example.com/git.php
但这无济于事。:(
有谁能帮助我吗?或者建议我可以做得更好的任何事情?提前致谢。