【发布时间】:2019-09-01 18:32:46
【问题描述】:
当 git 在合并时遇到冲突时,会显示一个列表,其中每个条目都以CONFLICT 开头,并包含有关冲突原因的信息,例如(renamed/deleted)。
我正在寻找一种在重新启动机器或仅关闭 CLI 后检索此准确列表的方法。
当然有:
git diff --name-only --diff-filter=U
但是,这不包含有关冲突原因的信息,因此找出 50 多个文件比重置 git 和重做合并更费力。
这可以实现吗,例如使用reflog?
编辑:请注意,这个问题专门针对所描述的列表,我不是要求其他解决方案来解决合并冲突。
【问题讨论】:
-
不幸的是,Git 在检测到重命名/重命名冲突后丢弃了一些重要信息。如果只有一个这样的冲突,它是可以恢复的,否则就很棘手。 (我认为这也适用于重命名/删除冲突——一般来说,重命名并没有完全正确记录。)
-
我尝试重现类似的冲突以更好地分析情况。 @Mär,你能告诉我你正在使用的 Git 版本吗?
-
@padawin 版本:
2.21.0.windows.1,但是在您决定深入研究之前 - 我怀疑一旦 CLI 输出不再可用,@torek 可能是正确的. -
公平,对不起。
-
别担心。此外,您的回复可能对其他人有所帮助。
标签: git git-merge git-reflog