Mercurial:在分支更新合并期间中止

时间:2011-07-29 21:05:17

标签: mercurial merge branch undo

我有一个包含未提交更改的工作目录,并更新到另一个分支。在合并所有已更改文件的过程中,我意识到这不是我想要做的。有没有办法从中恢复?有没有办法防止它再次发生?

Mercurial版本1.8.4

执行的命令是hg update default

我所在的分支是默认分支的子代。自上次从默认分支合并到子目录以来,没有对默认分支进行任何更改。

1 个答案:

答案 0 :(得分:1)

这是在工作副本中保留未提交更改的危险。 Mercurial不保留您的工作副本更改记录。你被迫依赖文件本身。

如果您:

,则可以恢复
  1. 备份回购(包括未提交的更改),以便您可以在需要时再试一次
  2. hg update <branch you want to be on>
  3. 仔细阅读您的工作副本
  4. 这将尝试将您的工作副本更改合并回原始分支。但是,无法保证结果符合您的要求。

    为了防止以后出现这种情况,您应该使用hg update --check。如果存在未提交的本地更改,--check选项将中止更新。