git blame:合并后的正确作者

Cri*_*anu 11 git merge annotate blame git-merge

GIT合并引入了新的提交.这会导致"git blame"出现问题:合并后的行似乎是由执行合并的开发人员提交的.

我可以理解这是冲突变化的情况(因为他解决了冲突).但有没有办法让非冲突的线条发生这种情况?一些选择"git责备"?

如果没有办法,当你有很多合并时,这基本上会使"git blame"几乎无用 - 而且GIT鼓励大量的合并.

SVN是否存在非冲突合并的问题?我不这么认为,但我可能错了,因为我(理解上)在使用SVN时避免像瘟疫这样的分支.

Atr*_*opo 9

内部git blame用于git rev-list创建修订列表.并git rev-list接受--no-merges选项.

所以你可以这样做:

git blame --no-merges <file>
Run Code Online (Sandbox Code Playgroud)


Dav*_*idN 5

我刚刚尝试与 git 版本 2.3.8 进行合并,非合并冲突行不归因于合并提交作者,它们归因于原始作者。也许从你的 git 版本开始就已经解决了这个问题。