HG:合并存储库的替代方法

时间:2014-04-03 18:04:26

标签: mercurial

我们现在拥有的东西

    1 )我们有一个单独的产品,在单独的Mercurial存储库中开发了很少的组件(组件是桌面客户端,移动客户端,服务器等)。
 
    2 )我们在版本中使用版本号,例如1.0.0.REV

我们想拥有什么

    3 )在组件之间有一个共享库(没有从一个存储库提交到另一个存储库)
 
    4 )在所有组件的版本中都有一个共同的REV编号

问题:是否可以将( 4 ),( 5 )合并而不将所有存储库合并为一个存储库?

1 个答案:

答案 0 :(得分:1)

这看起来可以使用子存储库来解决。

我建议将所有不同的存储库设置为主存储库的子存储库,其中可能包括您的共享库(作为子存储库或直接在主存储库中)和包含您当前版本号的修订文件。使用此方法,您当前的回购可以保持不变。

Main repo
|-.hg
|
|-Shared libraries
|
|-Desktop Client
|--.hg
|
|-Server
|--.hg
|
...
|
|-.hgsubstate
|-revision.xml
|

在任何子仓库的默认分支中的每次更改时,您都必须在主仓库中提交更改以指向其子仓库的新头部。