在进行“简单”合并(没有冲突)之后,git show通常只显示类似
git show
commit 0e1329e551a5700614a2a34d8101e92fd9f2cad6 (HEAD, master) Merge: fc17405 ee2de56 Author: Tilman Vogel <email@email> Date: Tue Feb 22 00:27:17 2011 +0100 Merge branch 'testing' into master
这是因为,对于合并,git show使用组合的差异格式,它忽略了与任一父版本一致的文件。
有没有办法强制 git 仍然显示组合差异模式的所有差异?
这样做git show -m会显示差异(分别使用新版本和所有父版本之间的成对差异),但我更愿意在各自的列中使用 +/- 标记的差异,就像在组合模式下一样。
git show -m
不,没有办法做到这一点git show。但有时肯定会很好,而且在 git 源代码中实现可能会相对容易(毕竟,你只需要告诉它 不要 修剪它认为无关的输出),所以要这样做的补丁可能会被 git 维护者接受。
不过,要小心你的愿望;将一个分支与三个月前分叉的单行更改合并仍然与主线有 巨大 的差异,因此这样一个完整的差异几乎完全没有帮助。这就是git不显示它的原因。