每当我正在进行本地更改时,我会意识到我想要撤消先前修订版中从特定文件中所做的更改,而我正处于一组更改中。例如:
此时,我意识到我想彻底撤消对r1000中文件A的更改,作为我正在进行的更改的一部分。
如果我没有任何本地更改,我可以使用hg backout
。我尝试过使用hg revert -r "1000^" A
,但收到的消息是A不受父变更集1000的影响。
那么,作为我当前更改的一部分,从先前变更集中的单个文件恢复更改的最佳方法是什么?
答案 0 :(得分:1)
因此,当我写这篇文章时,我遇到--reverse
命令上的hg diff
标志。对于问题中的示例,将该想法与hg import
相结合,可以得到如下命令:
hg diff -c 1000 -I A --reverse | hg import --no-commit --force -
这会为单个目标文件创建r1000更改的反向修补程序,然后将其传递给hg import
以应用于当前工作目录而不提交。