2010-11-13 94 views
1

我已经和mercurial合作了一段时间了,感觉就像我做的一件大事。不要因为意外而再次弄乱代码真是太好了。设置版本存储库 - 一个或多个小的?

我喜欢这个工作流程,并且想要在我的所有项目上设置版本控制。 以下两种替代方案的最佳选择是什么?

备选方案A:

/repo/ 
    /repo/ownWork/ 
    /project1/ 
    /repo/clients/ 
    /client1/ 

备选方案B:

/repo/project1/ 
/repo/client1/ 

回答

2

我不认为这是一个 “正确” 的答案。与许多事情一样,这取决于。
就我个人而言,我为每个项目都有一个单独的存储库,并且可能还有一个或多个共享代码存储库。使用分布式源代码管理,您必须检出/克隆整个存储库,而不仅仅是像SVN那样的子文件夹。因此,我希望尽可能保持每个项目/客户端的独立性,但如有必要,也要克隆共享仓库。

但是,我仍然维护一个“中央”Web服务器来承载它们。我喜欢“分布式”,我也喜欢“集中式”:-)

关于hg的好处在于,它似乎(对我的新手眼睛而言)非常容易随着时间的推移而改变布局/结构进展。

1

在mercurial中,很容易以后再合并回购,但不可能在不使现有克隆无效的情况下将它们分开。如果它成为一个麻烦,开始分开并合并。考虑项目之间共享代码的subrepos。

相关问题