Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Popen中运行git命令时出错_Python - Fatal编程技术网

Python 在Popen中运行git命令时出错

Python 在Popen中运行git命令时出错,python,Python,免责声明:我对Python编程非常陌生,所以我可能在这里做错了 我只想从打开的文件中运行git命令。这是我正在打的电话 subprocess.Popen( 'git status', cwd = os.path.dirname( path ), shell = True, stdout = subprocess.PIPE, stderr = subprocess.PIPE ) 我收到的错误消息是:找不到:/bin/sh:git:command 我已经通过列出文件来验证它是否指向了正确的目录。此

免责声明:我对Python编程非常陌生,所以我可能在这里做错了

我只想从打开的文件中运行git命令。这是我正在打的电话

subprocess.Popen( 'git status', cwd = os.path.dirname( path ), shell = True, stdout = subprocess.PIPE, stderr = subprocess.PIPE )
我收到的错误消息是:找不到:/bin/sh:git:command


我已经通过列出文件来验证它是否指向了正确的目录。此外,如果我打开一个受subversion控制的文件,并执行svn info命令,那么一切都会很好地工作。我完全不知道我在这里遗漏了什么。

正如Amber所说,在shell中输入“哪个git”,它会告诉你git安装在哪里。然后使用完整路径调用git,使用/usr/bin/git调用eq:

subprocess.Popen( '/usr/bin/git status', cwd = os.path.dirname( path ), shell = True, stdout = subprocess.PIPE, stderr = subprocess.PIPE )

确保
git
位于运行Python脚本的用户的
路径中?您使用的是svn还是git???因为您想在您的子进程
git status
中运行,并且在您说您做到了
svn info
之后!!!我不知道这是否有帮助,但我认为您得到的错误意味着您的系统中没有安装git,因为我指定了svn info命令使用的受subversion控制的另一个文件。我同时运行svn和git。是的,git已经安装,谢谢