我正在尝试对功能分支进行代码审查,该功能分支在多个点合并了来自主线的更改。我故意使这个问题的标题与Show non-merge Differences for two commits in git非常相似,但我对答案不满意。
我的问题是功能分支在同一文件上有多个提交,并且某些更改被还原或再次更改。
上述问题的答案之一是使用git log --no-merges -p branch-start..branch-end
. 我发现生成的差异文件仍然提到了不属于分支实际工作的文件中的更改。
另一个建议 - 使用--first-parent
- 更接近,但我得到一个包含多次相同文件的差异,每次提交一次。由于我对更改的历史不感兴趣,只是对最终状态不感兴趣,这不允许我在差异查看器的左侧拥有初始状态,而在右侧拥有最终状态。
顺便说一句,我正在使用 ReviewBoard 导入差异并进行审查。