如何解决Mercurial(v1.0.2)中的合并冲突?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决Mercurial(v1.0.2)中的合并冲突?相关的知识,希望对你有一定的参考价值。

我使用Mercurial 1.0.2进行合并冲突:

merging test.h
warning: conflicts during merge.
merging test.h failed!
6 files updated, 0 files merged, 0 files removed, 1 files unresolved
There are unresolved merges, you can redo the full merge using:
  hg update -C 19
  hg merge 18

我无法弄清楚如何解决这个问题。 Google搜索结果指示使用:

hg resolve

但由于某种原因,我的Mercurial(v1.0.2)没有解析命令:

hg: unknown command 'resolve'

我该如何解决这个冲突?

答案

仅对hg <v1.1有效

无需调用任何hg命令。与svn不同,Mercurial不会跟踪冲突的文件。如果你打电话给hg status,你会发现该文件只是被标记为已修改。

只需手动修复文件并提交即可。

另一答案

要在Hg 1.1+的评论中突出显示答案:

对于Hg 1.1+手动修复文件,然后执行

hg resolve -m test.h

将文件标记为已合并。

另一答案

跟踪冲突是在Mercurial 1.1中引入的,这是您正在使用的更新版本(您应该真正升级,Mercurial 1.1。于2008年12月发布)。在那个版本中你获得了resolve命令,它与svn resolve的工作方式类似。

我记得它,当发生冲突时,Mercurial会在你的文件中留下合并标记(<<<<>>>>行),除非你配置了merge tool。这也适用于较新的版本 - 我没有配置合并工具,并在发生冲突时获取合并标记。然后我可以手动修复文件并用hg resolve将其标记为已解决。

以上是关于如何解决Mercurial(v1.0.2)中的合并冲突?的主要内容,如果未能解决你的问题,请参考以下文章

如何中止mercurial中的合并?

Mercurial/Meld 中的 3 路合并如何工作?

Mercurial:在一个仓库中的分支之间合并一个文件

如何自动删除 Mercurial 工作树中的所有 .orig 文件?

如何在 Mercurial 中重复合并分支

如何正确关闭 Mercurial 中的功能分支?