作为一个个人项目,我想检查不同的python库和项目(无论是专有的还是开源的),并分析代码在不同版本中随时间的变化,以收集有关技术债务的一些信息(主要是通过静态代码分析)。我正在使用gitpython
库进行此操作。但是,我正在努力过滤对master
的合并提交。
我使用git.log("--merges", "--first-parent", "master")
过滤合并提交,从中提取提交哈希值并从所有存储库提交中过滤这些特定的提交。
作为第二部分,我想在每次合并提交中获取所有更改的文件。我可以通过git树访问blob,但是我不知道如何只获取更改的文件。
是否有一些有效的方法来实现这一目标?谢谢!