如何解决.hgtags冲突?

时间:2011-09-20 12:57:51

标签: mercurial

我无法将此冲突解决为.hgtags

kd:friend-sup/ $ cat .hgtags
<<<<<<< MINE
42569bf07912cd317b9305082d980cb64b318042 106.00
42569bf07912cd317b9305082d980cb64b318042 106.01
45846a087b03e656fcf1f986d39c095fbae2ed9e 106.02
45846a087b03e656fcf1f986d39c095fbae2ed9e 106.03
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.04
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.05
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.06
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.07
||||||| ANCESTOR
=======
ea8e577c2cfc6538da32c16ba4248d27768223bd raw-qf-merge--main-trunk
>>>>>>> OTHER

我尝试以各种方式编辑文件,删除标记,但无济于事。理想情况下,我想要来自MINE和OTHER的标签,所以只需删除标记。

kd:friend-sup/ $ vi .hgtags

失败:

kd:friend-sup/ $ hg resolve .hgtags
merging .hgtags
merging .hgtags failed!
kd:friend-sup/ $ cat .hgtags
<<<<<<< MINE
42569bf07912cd317b9305082d980cb64b318042 106.00
42569bf07912cd317b9305082d980cb64b318042 106.01
45846a087b03e656fcf1f986d39c095fbae2ed9e 106.02
45846a087b03e656fcf1f986d39c095fbae2ed9e 106.03
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.04
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.05
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.06
c45c61fdfe20fa088a4418fef55ba93930d6dbe0 106.07
||||||| ANCESTOR
=======
ea8e577c2cfc6538da32c16ba4248d27768223bd raw-qf-merge--main-trunk
>>>>>>> OTHER

1 个答案:

答案 0 :(得分:7)

您希望将文件中的合并冲突标记为已解决,因此您应该使用-m选项:

hg resolve -m .hgtags

如果没有,hg resolve将重试合并文件,覆盖手动更改。

hg resolve --help的相关部分:

  

resolve命令可以通过以下方式使用:

     
      
  • hg resolve [--tool TOOL] FILE...”:尝试重新合并指定的     文件,丢弃任何先前的合并尝试。重新合并不是     对已经标记为已解决的文件执行。使用“--all / -a”来     选择所有未解析的文件。 “--tool”可用于指定合并     用于给定文件的工具。它会覆盖HGMERGE环境     变量和配置文件。
  •   
  • hg resolve -m [FILE]”:将文件标记为已解决(例如,之后     手动修复文件)。默认是标记全部     未解决的文件。
  •