使用 pygit2,我可以获得更改的文件总数、插入总数、删除总数和文件的相对路径。请参见下面的代码。但是,我无法找到一种方法来为每个修改过的文件(如git diff --stats
显示)更改行上的统计信息。我可以在pygit2中做到吗?
def get_diff_stats(repo_path, commit_a, commit_b):
repo = Repository("{}/.git".format(repo_path))
diff = repo.diff(commit_a, commit_b)
print(diff.stats.files_changed)
print(diff.stats.insertions)
print(diff.stats.deletions)
for delta in diff.deltas:
print(delta.new_file.path, delta.status_char())