如何解决.hgtags冲突?

lun*_*ain 3 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
Run Code Online (Sandbox Code Playgroud)

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

kd:friend-sup/ $ vi .hgtags
Run Code Online (Sandbox Code Playgroud)

失败:

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
Run Code Online (Sandbox Code Playgroud)

sth*_*sth 7

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

hg resolve -m .hgtags
Run Code Online (Sandbox Code Playgroud)

没有它,hg resolve重试合并文件,覆盖手动更改.

相关部分hg resolve --help:

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

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