为什么Windows上的gitpython总是出现文件未找到错误?
在这里查看关于gitpython的教程时,我按照步骤一步步操作,但在我的电脑上遇到了一些问题。我的环境是Windows 7,使用的git版本是1.7.11.msysgit.1,还有Python 2.7。所有东西都通过easy_install顺利安装好了。Repo对象成功创建,像repo.tree()
和repo.branches
这样的命令也能正常工作。不过,当我执行repo.is_dirty()
时,出现了一些不具体的文件未找到错误。错误信息是WindowsError: [Error 2] The system cannot find the file specified.
有什么建议吗?
path = "c:\\path_to_repo"
repo = Repo(path)
assert repo.bare == False
print repo.tree()
repo.branches
print dir(repo)
#these always crash...
repo.is_dirty()
谢谢大家的帮助。
1 个回答
2
你可能在你的 PATH
里没有 git.ext
,但你可以自己测试一下。只要执行一下这个命令,如果出现错误,那你可以选择把它加到 PATH
里,或者设置 GIT_PYTHON_GIT_EXECUTABLE
,让 git-python 知道应该用哪个可执行文件来处理 git 命令。
之所以 .tree()
和相关的对象查询可以正常工作,是因为 gitpython 在这些操作中使用的是纯 Python 的后端。而像 .is_dirty()
这样更复杂的操作,默认情况下还是需要 git 可执行文件在你的 PATH
里。