我正在尝试重新整理我在本地计算机上所做的一些更改。我收到错误消息:
abort: can't rebase immutable changeset 110e73ed65a4
(see hg help phases for details)
即使在我要重新设定基准的变更集上更改相位后,我也遇到相同的错误(并且相位更改似乎成功了)。使用:
hg phase -f -d REV
我想知道历史记录中是否缺少我仍然可以更改的变更集,如果是这样,是否可以通过一个命令将变更集历史中的所有变更集更改为可变方式。
或者,即使有不变的变更集,也有办法强制 rebase 吗?
最佳答案
重新公开公开的更改被视为very bad idea。您不应该更改任何已推送的历史记录-phases的要点是跟踪尚未推送的更改(以便能够对其进行修改)以及已推送的更改(因此它们是不可变的) )。从rebase documentation:
最好合并您的更改或将它们graft合并。Graft(也称为Cherry-Picking)采用一个或多个更改集并将它们复制到您的当前分支中。
关于mercurial - 如何使用Mercurial重新建立不变的变更集?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14057640/