0

我们最近从 Perforce 迁移到 Mercurial,我们正在努力寻找如何仅将某些更改合并到我们的稳定版本中。我们有一个所有开发人员都从中克隆的中央存储库。在 Perforce 中,我们一直使用分支来维护版本,然后仅将每个更改列表中的错误修复从分支合并到主干,或者反过来合并到需要修复的分支中。

在 Mercurial 中,我们通过克隆实现了这一点,其中每个稳定版本都是主干的克隆存储库。

我们的结构看起来有点像这样:

Trunk
|- Release 1
|- Release 2
|- Release 3

我的问题是,我们如何才能仅将主干中的特定更改集合并到分支中?我希望有一种简单的方法可以做到这一点,最好使用 TortoiseHg,因为我们有很多具有不同经验水平的开发人员会这样做。

4

1 回答 1

1

我可能不完全理解您想要做什么.. 但是是的,您可以将更改从一个分支转移到另一个分支(例如,从default在 Mercurial 中调用的主干到发布分支)。在现代 Mercurials 中,这可以使用graft命令(或在transplant扩展之前)完成。要在分支类型上使用它:(有关详细信息,hg graft REVISION请参阅hg help graft)。

现在我不明白的是,您似乎没有几个分支,而只有一个(default)和几个克隆(?),在这种情况下,一切都变得更加复杂..您只能拉出一个变更集,然后您还需要提取它的祖先,并且很难知道您实际进入克隆工作目录的内容!所以我真的建议创建发布分支!

希望它会有所帮助。

于 2013-04-18T13:53:15.853 回答