我是git的新手,但是我试图使用python检查git存储库中是否有未提交的更改。无论我尝试使用python运行什么命令,我似乎都会遇到相同的错误。这是我的代码:
from git import *
repo = Repo("path\to\my\repo")
lastCommit = repo.head.commit.committed_date
uncommitted = repo.is_dirty()
一切正常,直到运行错误的最后一行:
Traceback (most recent call last):
.
.
.
raise GitCommandNotFound: [Error 2] The system cannot find the file specified
我也尝试了其他命令,但出现了同样的错误。例如,
repo.index.diff(repo.head.commit)
。我也尝试过运行repo.index.diff(None)
和repo.index.diff('HEAD')
给出相同的错误。我真正想要的实际上是为我已命名为$ git status
的存储库运行repo
。我在Windows 7上使用的是Python 2.7.9和gitpython 1.0.1。不胜感激! 最佳答案
在您的特定示例(仅用于说明目的)中,您的"path\to\my\repo"
将被理解为'path\to\\my\repo'
。在路径的各个组成部分("path\\to\\my\\repo"
)之间使用双反斜杠。 \t
被理解为制表符,\r
被理解为回车符。另外,您可以在路径前放置r
,如下所示:r"path\to\my\repo"
关于python - 如何使用Python检查Git Repo是否有未提交的更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31540449/