如何撤消 Mercurial 更新

How to undo a Mercurial update

我在 Mercurial 分支工作,该分支在工作目录中有大约 10 个文件更改。工作目录的父目录是分支的尖端。然后我更新到同一个分支中的一个更旧的更改集,忘记了我在工作目录中有 10 个更改。现在我在工作目录中有数百个更改,我不知道我开始时的 10 个更改是什么。有没有什么方法可以撤消对旧更改集的更新并返回到我的工作目录中只有 10 个更改的状态?

使事情复杂化的是,当 beyond compare 弹出要求我合并冲突时,我控制了更新。

我弄得一团糟

在您的工作目录中查找名称以 .orig 结尾的文件。这些是原始版本的备份。

不幸的是,这是默认情况下 mercurial 的 UI 不是很安全的地方。我建议添加一个别名来覆盖 hg update 的默认行为,或者添加一个执行 hg update --check 的别名,这样可以避免这种情况。