THG strip 不保留工作目录中的更改

THG strip does not keep changes in the working directory

我提交了现在处于 "draft" 阶段的变更集。这是最新的(本地)修订版。我想删除该变更集并将所有更改移回工作目录。这意味着我想要提交它的反面(工作目录 -> 修订版)。

我尝试了使用 keep 和不使用 strip 命令。在这两种情况下,我的变更集都被删除了,但是更改已经消失,工作目录仍然是空的。然后我需要 unbundle 备份和 pull 它,此时我正是从历史记录中的本地变更集开始的地方。

如何将更改从已提交的变更集中移动到工作目录?也许 backout?

我正在使用 TortoiseHg,但也可以在那里使用控制台。

看起来我设法解决了它,虽然我不太明白它是如何工作的。

在这个 answer 之后,我更新了我的修订版,切换到 Ammend,它显示 工作目录中的补丁更改以及修订版 ,然后 strip keep 删除了修订,由于修改,现在只有工作目录包含文件。

这并没有直接回答有关 strip 行为的问题,但在 THG 中执行此操作的另一种方法是:

  1. 搁置工作文件夹中任何有价值的东西

  2. 更新到最后一个所需的修订(您要撤消的修订之前的修订)

  3. Select 您要撤消的修订并单击 "Revert All Files..."

  4. 让它还原。工作文件夹现在将与您要撤消的修订匹配。

  5. 删除(没有 "keep")不需要的修订。或者甚至只是把它留在那里而忽略它。