“git pull”在 SSH 中执行,但不在 github post-receive 脚本中执行
我正在尝试将 github 设置为 Web 服务器部署自动化。除了最重要的一点之外,我已经把一切都做好了。我有一个文件 @ mydomain.com/github.php ,如下所示:
<?php
`git pull`;
?>
这是我的 github 存储库的接收后 URL。 Github 已成功发布,但 shell 命令未运行。当我尝试通过 SSH 连接到我的服务器并直接运行脚本时:
php github.php
它工作得很好并且更改的文件被成功拉取,
From git://github.com/user/Repo
7e3176d..f889c14 master -> origin/master
但是当我在浏览器中访问页面或 github POST 到它时 - shell 命令不会执行。没有错误 - 只是一个空结果。我在这里做错了什么?
I am trying to setup github to websever deployment automation. I've got everything working except the most important bit. I have a file @ mydomain.com/github.php that looks like this:
<?php
`git pull`;
?>
and this is the post-receive URL for my github repo. Github is posting to it successfuly, but the shell command is not running. When I try SSHing into my server, and running the script directly:
php github.php
it works just fine and changed files are pulled succesfully
From git://github.com/user/Repo
7e3176d..f889c14 master -> origin/master
but when accessing the page in my browser or when github POSTs to it - the shell command is not executed. There is no error - just an empty result. What am I doing wrong here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
有 2 个可能的问题:
getcwd()
)UPD
Git 将错误消息输出到 stderr,以便查看您需要的真正错误消息
There are 2 possible issues:
getcwd()
)UPD
Git outputs the error messages to stderr, so to see the real error message you need