回购结构如下:
- folder_a
- folder_b
- folder_c
- ...
我对在特定提交中更改的文件特别感兴趣,但仅对folder_a中的文件感兴趣。我的解决方案是
for filename, details in commit.stats.files.items():
if not filename.startswith('folder_a'):
continue
# ...
但是如果其他文件夹中有大量文件,则似乎性能不是很好。有没有更好的方法跳过我不在乎的文件?
如果我正确理解:您只希望在一个特定的子文件夹上统计一次提交的修改统计信息。
使用普通git:
git show [commit] --stat folder_a
将完全显示您想要的内容。
看看:git.show('<commit identifier>', '--stat', 'folder_a');
在您的python脚本中返回什么。