我必须分离 Mercurial 存储库。一个是项目的主干,另一个是带有一组附加更改的分支。
项目存储库有一个中心位置,我希望主干和分支都可用。我想做的是将两个存储库合并为一个,但仍然允许通过标签或类似的东西访问分支。这将允许开发人员检查主代码,但如果需要进一步更改,也可以切换到在分支上工作。我还想确保主干中的任何代码都不会意外进入分支。对分支的任何更改都应该是明确的和有意的。
实现这一目标的最佳方法是什么?
正如 Brandon 所说,只需从分支 repo 推送到主干,或将分支拉入主干。
然后,您可以选择是否要将分支和主干合并在一起,或者将它们分开。如果您从分支推送到主干,您可能会收到有关多头的警告。如果您想将它们分开,只需执行 push -f 即可。(拉动可能不会给出警告)
您可以将分支更改合并到主干,如果需要,以后仍然可以在分支上做进一步的工作。一般来说,我会标记每个版本,这样我就可以轻松地回到任何已经发布的内容。
创建分支时,是否将其克隆到另一个目录?如果是这样,将分支拉入主干仓库后将更难找到分支。您可能需要阅读书签以标记分支。还要看看多头是如何工作的。
注意:另一个选项是使用命名分支来永久标记分支。你不需要做任何额外的事情来稍后切换到它。