是否可以同时从多个Mercurial代码库中拉取代码?

4
我希望能像这样做某事:

hg pull http://server/repo1 http://server/repo2 http://otherserver/repo

我希望能够一次性地获取所有的更改集,并且能够聚合所有拉取操作的结果,显示出“添加了x个更改集,对z个文件进行了y次更改”的消息。目前我用一个略微复杂的bash脚本来实现这个功能,但是是否有一种方法可以通过单个Mercurial命令(或者我错过的已经存在的插件)来实现呢?


你可以创建一个“虚拟”仓库,其唯一目的是将其他仓库作为子仓库包含在内。 - James
或者说,一个“虚拟”的仓库从所有其他仓库中拉取代码,然后您从主仓库中拉取该代码。 - Brilliand
1个回答

1
正如@James所指出的,如果您的存储库具有
路径1 - 存储库1
路径2 - 存储库2

...

关于结构,您可以使用“超级仓库”思想,一次性拉取所有包含的仓库(但我建议使用GuestRepo代替子仓库扩展)

如果您的仓库中有共同的基础拉取源和合并变更集是必须的,您必须使用中间仓库作为收集器。即

  • 创建中间仓库

hg clone WORK MEDIATOR

  • 拉取外部资源(从MEDIATOR)

hg pull EXTERNAL1 & hg pull EXTERNAL2 ... hg pull EXTERNALN

  • 拉取中介者(从WORK)

hg pull MEDIATOR


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接