目前我的项目由多个存储库组成,例如:
+---项目 (主仓库) +---核心 (子仓库) +--- Web (子仓库) \---测试 (子仓库)
不幸的是,子存储库之间的代码非常耦合,因此它不能很好地与分支一起使用。
有没有办法将子存储库合并到一个保留历史记录的主存储库中?
我将从使用hg convert
排除.hgsub
和子存储库的文件映射开始。接下来,hg convert
在子存储库上使用文件映射中的重命名条目,例如:rename . Core
一旦有了这些新的存储库,您就可以一次hg pull -f
将转换后的子存储库中的变更集导入到转换后的主存储库中。您还需要将它们合并到新的主存储库中(它们形成单独的头,空修订版作为最近的共同祖先)。
第一个猜测:也许通过使用带有文件映射的转换扩展名?
另一个尝试:
编辑:添加更多细节,再试一次
假设您不必转换回购,为什么不简单地将每个回购推送到中央回购?