有没有办法使用git找出特定提交改变了哪些开发人员的代码?
该过程看起来像:
获取提交SHA,获取父提交git diff SHA^!
中的每个更改行,由行的作者(git blame
)对它们进行分组,然后按行数对它们进行排序,并将其列为
Commit SHA### updated code written by the following developers:
Jane Smythe (23 lines)
Rickard Strauss (8 lines)
我正在考虑在提交时使用它来打印到控制台(修改了以下开发代码,确保在PR 中标记它们),它甚至可能与Bitbucket /集成Git自动标记代码正在更改的开发人员或通过电子邮件发送等等。
我找到了this gist using python that appears to do something similar,但是除了bash / git之外还会使用另外一种语言吗?
答案 0 :(得分:1)
您可以使用git-diff-blame https://github.com/dmnd/git-diff-blame
您可以按提交过滤
答案 1 :(得分:0)
无法可靠地执行此操作,因为git需要区分添加和编辑的行,这些行不起作用。
一个好的方法是在提交之前获取文件中的贡献百分比,并解决PR中贡献最多的那些贡献。这就是github正在做的事情。