【问题标题】:What is the difference between hg revert and hg backout?hg revert 和 hg backout 有什么区别?
【发布时间】:2012-11-25 15:04:41
【问题描述】:

hg reverthg backout 都恢复以前版本所做的更改。两者有什么区别?

【问题讨论】:

    标签: mercurial revert backout


    【解决方案1】:

    鉴于变更集的历史:

    A --- B --- C --- D --- E
              [bad]        (*)
    

    hg revert -r B: 保持当前版本,但更新工作目录 截至修订版B。它具有撤销更改的补丁的效果 CDE

    hg backout -r C:更新工作目录,使其包含合并 修订版 C 的 parent (B) 和当前修订版,保留更改 在两个修订之间进行(工作目录仍然包含 修订版DE)。这具有在E 上应用补丁的效果, 仅撤消 C 的更改。

    如果不是所有的C 都不好,您可能需要编辑一些文件。记得做 hg commit 无论如何:

    A --- B --- C --- D --- E --- F
              [bad]              (*)
    

    【讨论】:

    • 回答我自己的问题,因为我在网上找不到任何明确的内容。希望现在这可以帮助其他人节省一些时间。
    • 不错的答案!我的“cheat sheet”解释了hg updatehg revert 之间的区别,这也可能会有所帮助。
    猜你喜欢
    • 2012-12-18
    • 1970-01-01
    • 2010-11-09
    • 2020-06-15
    • 2011-01-15
    • 2019-01-06
    • 1970-01-01
    • 2011-11-29
    • 2015-01-17
    相关资源
    最近更新 更多