代码之家  ›  专栏  ›  技术社区  ›  Murph

Mercurial:如何管理公共/共享代码

  •  8
  • Murph  · 技术社区  · 15 年前

    我将Mercurial用于个人用途,并考虑将其用于某些分布式项目,以替代SVN,原因有很多。

    我已经习惯于将它用于独立的项目,并且可以看到各种共享选项,但是我还没有找到任何关于管理公共库的指导,这些库将以类似于外部人员在Subversion中提供的方式包含在多个项目中。

    最明显的共享代码块是错误处理和报告——我们希望在所有项目中都能做到这一点(这一点发展得相当好)。还有实用程序代码、控制库和类似的东西,我们发现用每个解决方案构建的as项目比引入编译类更好(不仅因为它确保了它们是最新的,持续集成有助于我们处理破坏性的更改)。

    思想(我讨厌开放式问题,但我想知道别人在做什么,如果有的话)。

    4 回复  |  直到 11 年前
        1
  •  3
  •   Ry4an Brase    15 年前

    Mercurial 1.3现在包括 nested repository support ,可用于表示依赖项。另一种选择是让您的构建系统使用诸如ivy或maven之类的工具来处理依赖项的下载和跟踪,尽管它们更关注于下拉编译代码。

        2
  •  1
  •   Murph    11 年前

    自从我问这个问题以来,世界已经改变了,我现在使用的解决方案也不同了。

    简单的答案是现在使用包(特别是nuget,我做.net)来传递公共代码,而不是嵌套repos,并将项目包含在解决方案中。

    所以我有一些共同的代码,由TeamCity构建并托管在Nuget包中,以前我会有一个外部的,包括项目/源代码,现在我只引用这个包。

        3
  •  0
  •   ismail    15 年前

    使用 Forest Extension 它在某种程度上模拟了hg的svn外部。

        4
  •  0
  •   Lazy Badger    11 年前

    Subrepository (良好) guide Guestrepo “克服……“局限”(子报告)是当今语言不可知论的答案。