将它们分开?看来我应该能够从一个存储库推送到另一个存储库……也许"/>

如何在Mercurial中合并两个项目?

如何在Mercurial中合并两个项目?

How to combine two projects in Mercurial?

我有两个单独的Mercury存储库。 在这一点上,它们"成为一体"是有道理的,因为我想同时从事两个项目。

我真的希望两个项目都成为新存储库中的子目录。

  • 如何合并两个项目?
  • 这是个好主意还是我应该
    将它们分开?
  • 看来我应该能够从一个存储库推送到另一个存储库……也许这真的很简单?


    我能够以这种方式合并我的两个存储库:

  • 使用hg clone first_repository克隆其中一个存储库。
  • 使用hg pull -f other_repository从其他存储库中提取代码。
  • 拉取中的-f(强制)标志是关键-它表示忽略了两个存储库不是来自同一源的事实。

    这是此功能的文档。


    从1.3(2009-07-01)开始,hg开始具有subrepo。早期版本不完整且不稳定,但是现在可以使用了。


    如果您在整个项目中使用的不是相同的代码,请将它们分开。您可以将每个项目的个人存储库设置为仅一个目录。为什么不必混合所有分支,合并和提交注释。

    关于您的编辑:从一个存储库推送到另一个存储库。您始终可以使用transplant命令。虽然,所有这些实际上都在阻碍您将两者结合的愿望,所以使用我的建议可能会让您感到不舒服。然后,您可以使用森林扩展名或其他名称。

    1
    hg transplant -s REPOSITORY lower_rev:high_rev

    推荐阅读