1

我们有一个 PHP 脚本,它只包含以下代码......

/usr/bin/git pull

...我们最初只使用git pull.

每当 GitHub 向此脚本发布数据时,git pull都会失败。我们尝试使用http://us2.php.net/manual/en/function.shell-exec.php并将响应存储在变量中并将该变量的内容写入文本文件,以便我们可以确保命令被处决了——他们被处决了!例如git log,我们可以执行,文本文件将包含 git log 响应的所有内容。但是执行git pull是行不通的?

我们的服务器工程师建议使用 git install 的完整路径(which git用于查找路径),这就是您在上面看到的,但这也不起作用。

我们很困惑为什么我们可以执行 git 命令,例如git logGitHub 的 post-hook 调用我们的脚本但仍然git pull不起作用?

有没有人对为什么这不起作用有任何想法?

谢谢。

4

1 回答 1

0

确保代码以具有足够权限的用户身份执行。whoami您可以通过在尝试使用 git 拉取的脚本中运行来确认这一点

于 2012-04-25T10:44:27.580 回答