【发布时间】:2011-02-01 03:36:47
【问题描述】:
我正在建立一个 github 帐户,与一些朋友一起做一个小项目。 我想让我的家用机器能够通过 php 执行 git pull,这样我们只需要调用这个小 php 文件就可以使机器保持最新状态。
截至目前:
<?php
$output = shell_exec('git help');
echo "<pre>$output</pre>";
?>
这很好用,我得到了输出,我在正确的目录中,所以 git pull 应该也能正常工作,但是我得到一个挂起的页面,没有错误,什么都没有。
有什么想法吗?
编辑: 一些精度,repo 很小,大约 300K,从命令行只需几秒钟。我也尝试了 shell_exec("dir"),我在正确的目录中。如果我足够精确的话,我正在 Windows 7 x64 上运行 xampp 的默认安装 :)
【问题讨论】:
-
拉取远程仓库需要多长时间?我怀疑你只是超时了。
-
谢谢,我在另一台计算机上开发时也有一个使用 git 的 web 项目。离线合并我的主人后,我总是必须通过 ssh 连接才能调用“git pull origin master”。现在我通过我调用的 php 脚本解决了它。问题当然是 php 作为 apache_mod 运行。作为 fcgi 运行解决了它。 :)
-
尝试从 php 运行
git pull时的注意事项集合 ... jondavidjohn.com/b/7m -
请查看这个可能对您有用的解决方法:stackoverflow.com/questions/9978400/…