【问题标题】:What is the recommended way to revert a specific change in Mercurial?恢复 Mercurial 中特定更改的推荐方法是什么?
【发布时间】:2017-07-18 16:15:59
【问题描述】:

我有一个文件,其中几个单独的块在一个变更集中发生了更改。 (这不是最新的变更集。)

现在我只需要将其中一个块恢复到这些更改之前的修订状态。推荐的程序是什么? Mercurial/TortoiseHg 是否提供任何帮助,或者我应该手动将此块替换为旧内容?

【问题讨论】:

    标签: mercurial tortoisehg revert


    【解决方案1】:

    如果您想要撤消完整的变更集,可以使用hg backout 来完成,而无需手动操作。在它的帮助下:

    hg 退出 [OPTION]... [-r] REV

    早期变更集的反向效果

    准备一个新的变更集,其效果为 REV undo 在当前 工作目录。如果没有遇到冲突,它将被提交 马上。

    如果 REV 是工作目录的父目录,那么这个新的变更集是 自动提交(除非指定了 --no-commit)。

    注意: 'hg backout' 不能用于修复不需要的或不正确的 合并。

    但是,由于您只想还原一个大块,您可以使用hg backout,然后您需要使用--interactive 标志进行提交,以便您可以选择要提交的正确大块:

    hg commit --message "Revert some stuff" --interactive
    

    最后,将工作目录恢复到现在未修改的状态 - 你不想改回剩余的块

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-20
      • 1970-01-01
      • 1970-01-01
      • 2012-02-05
      • 2010-10-19
      • 2017-10-08
      • 2014-02-21
      相关资源
      最近更新 更多