Git:获取更改在提姆身上释放给主人

2024-05-29 07:04:50 发布

您现在位置:Python中文网/ 问答频道 /正文

作为一个个人项目,我想检查不同的python库和项目(无论是专有的还是开源的),并分析代码在不同版本中是如何随时间变化的,以收集一些关于技术债务的信息(主要通过静态代码分析)。我是用gitpython库来做这个的。但是,我很难过滤到master的合并提交。你知道吗

我使用git.log("--merges", "--first-parent", "master")过滤合并提交,从中提取提交哈希并从所有存储库提交中过滤这些特定提交。你知道吗

作为第二部分,我希望在每个合并提交中获得所有更改的文件。我可以通过git树访问blob,但我不知道如何只获取更改的文件。你知道吗

有没有什么有效的方法可以做到这一点?谢谢!你知道吗


Tags: 文件项目代码git版本masterlog信息
1条回答
网友
1楼 · 发布于 2024-05-29 07:04:50

... I'd like to get all changed files in each merge commit. ... but I don't know how to get only changed files.

一旦您拥有了如上所述的提交列表,就可以对其进行循环并运行以下操作:

git diff

使用带有 name-only标志的git diff

enter image description here


git diff

name-only
Show only names of changed files.

name-status
Show only the names and status of changed files. See the description of the diff-filter option on what the status letters mean.

相关问题 更多 >

    热门问题