如何 'Sync' 或赶上命名分支直到默认的特定修订

How to 'Sync' or catch-up a named branch till a particular revision of default


我在我的 Mercurial 存储库中有一个命名分支,我想 'sync' 或使用默认更新但 直到默认分支的特定修订 不是小费)。
我已经知道如何 'Sync a named Branch' 将默认值合并到其中。但是,我无法找到一种方法来同步,直到只有特定的默认修订版本。

编辑
这是我想要实现的,通过图表解释:

ci0
|
|
ci1*..\(特征分支)
|.......\
|.........\
ci2*.....\
|......\
| ............\
ci3*.......\
|...................... \
|............\
ci4*------------O(merge 'default'直到ci4,即ci2-4,进入'feature'分支)
|
|
ci5*
|
ci6*
|
ci7*(提示)



在此先感谢您。

要与特定的变更集合并,您基本上会这样做:

hg update feature-branch
hg merge changeset-revno-on-default-branch

这里真的没有魔法。

要将整个默认分支合并到您的功能分支中,您只需在上面的合并命令中指定 default,但您也可以只指定要合并的特定变更集的修订号或散列。

示例:

hg update feature-branch
hg merge ci4

(假设 ci4 是您要合并的变更集的修订号或散列,具体命令可能类似于 hg merge abb387187hg merge 42

如果您正在使用 TortoiseHg(或 可能 任何其他 Mercurial 可视化工具),您将首先更新到要合并到的分支,然后右键单击特定的分支您要合并到其中的变更集。合并将始终尝试合并到该点的历史记录,而不仅仅是您右键单击的特定变更集。

如果您 想要一个特定的变更集,您正在寻找 graft 命令,但我提到这个只是为了完整性,而不是作为对您问题的直接回答。