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

我有两个单独的mercurial存储库。 在这一点上,他们“合而为一”是有道理的,因为我想同时在这两个项目上工作。

我真的很喜欢这两个项目都是新存储库中的一个子目录。

  • 我如何合并这两个项目?
  • 这是一个好主意,还是应该让他们分开?
  • 看起来我应该能够从一个存储库推向另一个存储库......也许这真的很简单吗?


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

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

    这里是这个功能的文档。


    hg自1.3(2009-07-01)开始有subrepo。 早期版本不完整且不稳定,但现在它非常实用。


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

    关于您的编辑:从一个存储库推向另一个存储库。 您始终可以使用transplant命令。 虽然,所有这一切都是你想要将两者结合起来的一面,所以你可能会对我的建议感到不舒服。 然后你可以使用森林扩展,或者其他的东西。

    hg transplant -s REPOSITORY lower_rev:high_rev
    
    链接地址: http://www.djcxy.com/p/37625.html

    上一篇: How to combine two projects in Mercurial?

    下一篇: Converting Mercurial folder to a Git repository