首先,我有一个非常大的cvs存储库,我试图将事情切换到mercurial。这个CVS库由几个目录组成,有点像this问题的情况。但是,每个子目录不是一个完整的独立项目。每个项目都使用整个子集,但它们的交点不是空的。检出一个mercurial存储库的子集
下面是一个例子来阐明:
/cvsroot
.../core
.../feature-1
.../feature-2
项目1使用芯和特征-1;项目2使用核心和功能-2。我不希望从事项目2工作的人在他们的工作副本中拥有功能-1目录,因为它实际上是一组约30个目录并且空间不是很小。
有没有办法与mercurial轻松处理这个(或者,或者,很好)?我想过为交叉点使用单独的存储库,但这并不理想。这意味着做额外的拉动和额外的更新,并可能编写一堆脚本来管理它。
我的另一种选择是复制每个交点。这并不好,因为它可能会导致通用代码分叉,因为不同的人在不同的部分工作。
+1:子回购是这种情况下的免费方式。 – 2011-04-15 18:39:27
现在hg sub repos稳定吗? – 2011-04-15 18:44:21
@Mark Stahler:我与之合作的SW团队已经使用了他们一段时间了,他们看起来很稳定。关于它们有一些不太理想的东西,但我不会认为它们是不稳定的 - 更多的是可用性问题。 – dls 2011-04-15 18:51:37