DVCS:跨不同编程语言的单一源控制存储库?

时间:2011-12-04 16:30:17

标签: version-control development-environment dvcs multiple-languages

我的系统分为三种不同的编程语言:C#,C ++和Java。前两个在两个独立的Visual Studio解决方案中进行管理,后者在Eclipse项目中进行管理。

我想使用分布式版本控制系统解决方案(DVCS)管理所有三个的源代码。特别是Mercurial。

以下哪个选项会更好: A.拥有一个包含所有系统源代码的存储库。每个3个“面向语言”的项目都驻留在不同的子文件夹中。

B中。为每个面向语言的项目都有一个存储库。共计3个独立的存储库。

在这两个选项中,我计划通过在Visual Studio(TortoiseHg)和Eclipse(MercurialEclipse)之间交替来管理存储库。

提前致谢,urig

1 个答案:

答案 0 :(得分:1)

使用DVCS,存储库通常与“组件”绑定,即一组连贯的文件,如同修改一个文件,您将标记所有文件

因此,如果您使用三组文件(每种语言一组)可以彼此独立进化(例如,一个版本为1.2版而另一个版本为3.4版),那么最好考虑使用单独的回购文件每组文件。
然后,您可以将这些存储库分组为子模块,更加“component-based approach”。

如果它们紧密相连,一组中的一个修改触发了其他文件组的修改,那么一个具有单独目录的回购就可以了。