问题 mercurial:如何在合并期间挑选樱桃


考虑我有以下情况:

我有一个来自修订版4的分支br_foo。之后,在默认分支上还有3个更改:6,7和8.我只想将更改7和8合并到br_foo。有没有办法在mercurial实现这一目标?


4289
2017-12-02 12:37


起源



答案:


移植v移植

根据您使用的Mercurial版本,您可能会使用新版本 接枝 Mercurial 2.x或更旧的功能 移植扩展 对于早期版本的Mercurial。


Graft命令

这是最近宣布的(2011年11月)所以我自己没有机会与它合作。

此命令使用Mercurial的合并逻辑来复制单个更改   来自其他分支,而不在历史图表中合并分支。   这有时被称为“backporting”或“cherry-picking”。通过   默认情况下,移植将从源复制用户,日期和说明   变更。


移植扩展

我已经将它用于这种情况。描述中的一小段摘要......

此扩展允许您从另一个分支或移植补丁   库。

它在移植的变更集中记录原始变更集ID,   并避免移植以前移植的补​​丁。

它还可以用于根据上游更改来修改分支   (包括删除上游采用的变更集)   重写变更集并编写一些变更集。


11
2017-12-02 12:41



如果您使用的是Mercurial的新2.0版本,则移植命令的用途完全相同,默认情况下包含在内。移植文档的链接位于移植维基页面的顶部。 - krtek
@krtek谢谢你! - Chris McCauley


答案:


移植v移植

根据您使用的Mercurial版本,您可能会使用新版本 接枝 Mercurial 2.x或更旧的功能 移植扩展 对于早期版本的Mercurial。


Graft命令

这是最近宣布的(2011年11月)所以我自己没有机会与它合作。

此命令使用Mercurial的合并逻辑来复制单个更改   来自其他分支,而不在历史图表中合并分支。   这有时被称为“backporting”或“cherry-picking”。通过   默认情况下,移植将从源复制用户,日期和说明   变更。


移植扩展

我已经将它用于这种情况。描述中的一小段摘要......

此扩展允许您从另一个分支或移植补丁   库。

它在移植的变更集中记录原始变更集ID,   并避免移植以前移植的补​​丁。

它还可以用于根据上游更改来修改分支   (包括删除上游采用的变更集)   重写变更集并编写一些变更集。


11
2017-12-02 12:41



如果您使用的是Mercurial的新2.0版本,则移植命令的用途完全相同,默认情况下包含在内。移植文档的链接位于移植维基页面的顶部。 - krtek
@krtek谢谢你! - Chris McCauley


自mercurial 2.0(2011年11月1日发布)以来,这是由新的核心命令处理的 接枝

此命令使用Mercurial的合并逻辑从其他分支复制单个更改,而不在历史记录图中合并分支。这有时被称为“backporting”或“cherry-picking”。

也可以看看 这个问题


2
2017-12-02 14:55