【发布时间】:2013-06-08 13:19:20
【问题描述】:
我使用 Apache+mod_wsgi 托管的 django 项目。我正在尝试通过子进程使用 git 命令提取更新,例如:
subprocess.check_output(['git', 'pull', 'origin', 'mybranch'])
但是,我收到如下错误:
Command '['git', 'pull', 'origin', 'mybranch']' returned non-zero exit status 128
当我通过浏览器调用此函数时出现此问题。如果我从 python sell 运行subprocess.check_output(['git', 'pull', 'origin', 'mybranch']),就不会出错。它按预期完美运行。
【问题讨论】:
-
会不会是
import os;print(os.getcwd())(= 当前工作目录)不在 git 存储库中? -
用户在 git repo 中
-
git 命令的输出是什么?
-
可能你的路径变量不包含 git 命令。 Git 也可能会丢失您的 .ssh 设置/访问资源所需的密钥。
标签: python django subprocess