0

我刚刚发现有人前段时间在本地提交了一些更改,那是修订版 #410,现在正确的版本是 #638... 在那个人的反复无常的历史中创建了一个分支,我想摆脱它...我试图执行撤消>退出...但它不会让我...

我得到的错误信息是:

错误信息

该人的 Mercurial 历史:

从未推送过的分支

我能做些什么来摆脱那个分支?它应该做的更改已经在之前进行了一些修改......

4

2 回答 2

4

您可以使用mq-extension的strip 命令,例如:hg strip 410

于 2012-10-19T13:07:42.067 回答
2

该错误似乎是因为您在不同的分支上,那么以下可能会起作用:

hg up -r 410
hg backout -r 410
hg merge
hg commit

但是,这将添加一个不相关的变更集和一个您不关心的合并。你可以简单地这样做,而不是:

hg clone -r tip repo repo1      # This should strip the unwanted changeset
cp repo/.hg/hgrc repo1/.hg/hgrc # This will copy any repo customizations
rm -rf repo                     # Delete original repo
mv repo1 repo                   # Replace original repo

上面的命令是 Unix/Linux 命令,看起来你可能在 Windows 上。如果是,只需将命令替换为 Windows 等效命令。如果你不明白,我可以编辑我的答案。

于 2012-10-20T20:34:53.750 回答