我有一个文件,其中一个变更集中有几个单独的块已更改。 (这不是最新的变更集。)
现在我需要在这些更改之前将这些块中的一个恢复到修订的状态。推荐的程序是什么? Mercurial / TortoiseHg是否提供任何帮助,或者我是否应该用旧内容手动替换此块?
答案 0 :(得分:1)
如果您希望撤消完整的变更集,则可以使用hg backout
无需人工操作即可完成。从它的帮助:
hg backout [OPTION] ... [ - r] REV
早期变更集的反向效果
准备一个新的变更集,当前的REV撤消效果 工作目录。如果没有遇到冲突,则会提交 立即
如果REV是工作目录的父级,那么这个新的变更集就是 自动提交(除非指定了--no-commit)。
注意: ' hg backout'不能用来修复不需要的或不正确的 合并。
但是,由于您只需要恢复一个hunk,您可以使用hg backout
然后需要使用--interactive
标志进行提交,以便您可以选择正确的hunk(s)承诺:
hg commit --message "Revert some stuff" --interactive
最后,将工作目录恢复到现在未修改的状态 - 你不想改变剩余的帅哥