我们正在考虑从SVN转向Mercurial,并且遇到了绊脚石。我可以使用mercurial来模拟svn:externals吗?
我们目前使用svn:externals
来自动将一组常用库拉入工作目录。在Mercurial中找不到像这样的支持。
有没有办法与Mercurial自动执行此操作,还是需要将其伪装为构建过程的一部分?
我们正在考虑从SVN转向Mercurial,并且遇到了绊脚石。我可以使用mercurial来模拟svn:externals吗?
我们目前使用svn:externals
来自动将一组常用库拉入工作目录。在Mercurial中找不到像这样的支持。
有没有办法与Mercurial自动执行此操作,还是需要将其伪装为构建过程的一部分?
没有好的方法来使用mercurial来做它。在其他地方提到的森林扩展导致了现在修复中的更多问题。大多数人只是使用大型回购协议,并将所有组件都包含在回购协议中,然后让他们的构建脚本下载并使用第三方库 - 如果使用的是Java头部,则使用maven。
简短回答“在构建过程中伪造它”。
更新:
在水银1.3添加了一个新的子回购功能。它就像旧的扩展名,但是以所有新代码开始。
Subrepos被认为是“最后手段的特征”。
嗨。我不清楚“大多数人只是使用大型回购协议,并将所有组件都包含在回购协议中”。这将如何工作?假设你有project1和project2都使用component1和component2,那么如何使用Mercurial在一次命中中检出project1? – 2009-07-13 11:22:16
尝试Mercurial的Forest Extension。
当心的森林延伸。它并未保持最新状态,只适用于旧版本的Mercurial。它已经不受大多数水银人的青睐,所以我不认为它将来会被拖延。 – 2008-10-24 03:35:21
你试过Deps Extension?
这不是水银的一部分,但似乎模仿svn:externals
功能
看来,林扩展的功能正在实施为核心的水银(如1.3):
https://www.mercurial-scm.org/wiki/Subrepository。
目前标记为“实验性”,但可能是从v1.4开始处理svn:external-type功能的路线。
这个问题最好的hg扩展名可能会有用。我特别提出了这个问题,以解决这个svn:externals问题。 [什么是最好的和必须的hg/mercurial扩展?](http://stackoverflow.com/questions/1869040/what-are-the-best-and-must-have-hg-mercurial-extensions) – 2010-02-05 15:01:11