我的系统分为三种不同的编程语言:C#,C ++和Java。前两个在两个独立的Visual Studio解决方案中进行管理,后者在Eclipse项目中进行管理。
我想使用分布式版本控制系统解决方案(DVCS)管理所有三个的源代码。特别是Mercurial。
以下哪个选项会更好: A.拥有一个包含所有系统源代码的存储库。每个3个“面向语言”的项目都驻留在不同的子文件夹中。
B中。为每个面向语言的项目都有一个存储库。共计3个独立的存储库。
在这两个选项中,我计划通过在Visual Studio(TortoiseHg)和Eclipse(MercurialEclipse)之间交替来管理存储库。
提前致谢,urig
答案 0 :(得分:1)
使用DVCS,存储库通常与“组件”绑定,即一组连贯的文件,如同修改一个文件,您将标记所有文件
因此,如果您使用三组文件(每种语言一组)可以彼此独立进化(例如,一个版本为1.2版而另一个版本为3.4版),那么最好考虑使用单独的回购文件每组文件。
然后,您可以将这些存储库分组为子模块,更加“component-based approach”。
如果它们紧密相连,一组中的一个修改触发了其他文件组的修改,那么一个具有单独目录的回购就可以了。