Git 如何显示提交的冲突解决方案?

Git 如何显示提交的冲突解决方案?,git,cherry-pick,Git,Cherry Pick,如果选择了提交并要求解决冲突: commit 7b8e5c99a4a40ae788ad29e36b0d714f529b12eb Author: John Spray Date: Tue May 20 16:25:19 2014 +0100 ... Signed-off-by: John Spray (cherry picked from commit 1d9e4ac2e2bedfd40ee2d91a4a6098150af9b5df) Conflicts:

如果选择了提交并要求解决冲突:

commit 7b8e5c99a4a40ae788ad29e36b0d714f529b12eb
Author: John Spray 
Date:   Tue May 20 16:25:19 2014 +0100
...
    Signed-off-by: John Spray 
    (cherry picked from commit 1d9e4ac2e2bedfd40ee2d91a4a6098150af9b5df)
    Conflicts:
        src/crush/CrushWrapper.h

是否有方法显示两次提交(即上例中的1d9e4ac和7b8e5c)之间的差异,以确定冲突是如何解决的?

一种方法是重做樱桃选择以重现冲突

  • git签出7b8e5c99a4a40ae788ad29e36b0d714f529b12eb
  • 吉特樱桃镐-n 1D9E4AC2EBEDFD40EE2D91A4A6098150AF9B5DF

-n
表示不要提交,因此在检查完工作后可以将其扔掉。

下次解决冲突时,请使用内置git
rere
命令。
Reere=Re使用Re记录Re解决方案。它将像补丁一样记录您解决冲突的方式,然后您可以简单地查看输出


是一篇关于它的详细文章。

原始提交和原始提交(包括冲突解决)之间的差异可以通过以下方式显示:

commit=7b8e5c99a4a40ae788ad29e36b0d714f529b12eb
从=$(git show--无补丁--pretty=%b$commit)中选择_
perl-ne“如果(从提交(\w+).*/$1/)中选取的s/*cherry)打印”
diff-u--忽略匹配行“^[^+-]”\
规则[i]->mask.ruleset==规则集){
++返回true;
++     }
++    }
++
++返回false;
++  }
++
+  /**
+*返回“type”类型的编号最低的规则集`
+   *

我需要的不是原始冲突,而是解决冲突的方式。@LoicDachary除了结果提交(即7b8e5)之外,没有关于如何解决冲突的记录。冲突标记告诉您在7b8e5的文件中查找的位置。如果第120-124行的文件
some/thing
中存在冲突,则运行
git show 7b8e5c99a4a40ae:some/thing
并查看第120-124行。我正在寻找一种在未启用Reere时显示冲突解决方案的方法。