我正在使用推荐的GitPython模块,但无法弄清楚如何构建以下命令:
git diff --name-status ec04352 b945e6c
Run Code Online (Sandbox Code Playgroud)
我想获取有关两次提交之间所有已修改文件的信息,而此命令正是我想要做的。您能对此发表评论吗?
这是一种方法:
import git
repo = git.Repo('path/to/your/repo')
print repo.git.diff('ec04352', 'b945e6c', **{'name-status': True})
Run Code Online (Sandbox Code Playgroud)
但是,它正在通过后门。
您应该能够执行以下操作:
a = repo.commit('ec04352')
b = repo.commit('b945e6c')
diffs = a.diff(b)
>>> a
<git.Commit "ec04352">
>>> b
<git.Commit "b945e6c">
>>> print diffs[0]
zip/JSONzip.java
=======================================================
lhs: 100644 | d8e3ac652a5a5158692fa5fc131340c03dffd08e
rhs: 100644 | 220686de3dcb0dd17a54cbc5f8e44df261b664d5
>>>
Run Code Online (Sandbox Code Playgroud)
您需要使用该Diff对象来找出差异。
| 归档时间: |
|
| 查看次数: |
814 次 |
| 最近记录: |