【问题标题】:THG strip does not keep changes in the working directoryTHG 条不保留工作目录中的更改
【发布时间】:2019-01-28 07:54:27
【问题描述】:

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

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

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

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

【问题讨论】:

  • 从命令行,hg strip -r <rev> --keep 做你想做的事。也许 TortoiseHG GUI 做错了。
  • 当您说“补丁”时,我认为您只是指提交(或修订)?不是真正的 Mercurial 补丁?
  • @DaveInCaz 是的。

标签: mercurial tortoisehg


【解决方案1】:

这并不能直接回答关于 strip 行为的问题,但在 THG 中这样做的另一种方法是:

  1. 将任何有价值的东西放在工作文件夹中

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

  3. 选择要撤消的修订并单击“恢复所有文件...”

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

  5. 删除(不带“保留”)不需要的修订。或者甚至只是把它放在那里并忽略它。

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-24
      • 2011-03-24
      • 1970-01-01
      • 1970-01-01
      • 2011-03-25
      • 1970-01-01
      相关资源
      最近更新 更多