difftool不会显示Git diff -cc模式

我不确定发生了什么,但我只是将我的diff工具设置为由git difftool调用,但是第一个文件difftool遇到的是以标准差异方式显示 – 在控制台上逐行替换

diff --cc path/to/file.c
index ac1b99f,da29e2e..0000000
--- a/path/to/file.c
+++ b/path/to/file.c
@@@ -186,18 -133,20 +188,18 @@@

   code code code code
   more code more code more code
-- old code old code old code [displayed in red]
++ new code new code new code [displayed in green]
   even more code even more code 
   yet more code yet more code

这似乎是diff的一个特例,因为它有–cc标志和一个三元符号(@@@)而不是一个双重符号(@@),最重要的是对被修改的修订版的一个奇怪的描述: HASH1,hash2..0000000.

究竟是什么?我选择Beyond Compare作为我的差异工具,它能处理这些情况吗?如果没有,可能有其他人能够这样做吗?

最佳答案 组合差异是Git特有的,通常在其他任何地方都无法使用.

Git不知道如何调用其他命令让它们产生组合差异,即使其他命令能够做到这一点.

(Git描述了如何在各种git diff文档的一个部分中阅读组合差异,并留下一个关键事实:组合差异通常会省略大部分差异.这个事实在文档的其他地方提到,远非第一部分研究时试图理解如何阅读Git组合差异.无论如何,组合差异只对检查合并的合并部分非常有用.)

点赞