2010-02-28 78 views
8

我正在研究如何/如果我应该从svn切换到git。团队之间共享库的单个或多个Git存储库

我目前有一个多层次的svn项目集,这样D就使用C来使用C,而B使用A.实际部署的项目,如X,Y,Z使用任何常用库A-D。目标是让未来的项目和其他团队共享基础库(A-D)并实现更好的分支控制。

在svn中,如果我们希望允许其他团队在不涉及X,Y,Z的情况下使用库C,那么它很简单,他们只是检查svn树的C位,如果这导致他们想要补丁B,然后同上。即使他们在相同的实际回购中,他们也不会碰到X,Y,Z。 git会发生什么并不明显。

如果我想使用git设置某些东西,您会如何建议我设置它,以及您建议的设置有哪些优缺点。

功能我所寻找的是:

  1. 简单的标记(如果可能),因此可以(有一个共同的svn根或单个混帐回购协议简单)
  2. 简易轻松标记整个代码库的状态为其他人整合/重用公共库AD
  3. 简单让他们给我们建议的修复程序/修补程序,我们可以选择采取或忽略(我希望从git中获得的主要内容之一)。
  4. 团队具有可用于共享库有效私有制功能(这样他们就可以标记它们并修复他们自己对自己的时间表)

Git的似乎提供了我想要的东西,我只是不知道如何来处理单个和多个回购问题。

回答

2

如果我想使用 混帐设置的东西了,你会怎么建议我把它 [...]

只是多Git仓库去(他们是相当便宜,他们类似于许多小船而不是泰坦尼克号 - 换句话说,我发现它们很灵活,我喜欢灵活性)。

现在,然后我帮助与在“工具”是独立的Git仓库的结构,像这样

foo/server 
foo/client 
foo/docs 
foo/tools/ 

的“服务器”,“客户端”,“文档”和每个文件夹的项目。这可以让专业团队成员克隆和准确处理他们希望工作的内容。更不用说,如果我们只是想拉入所有东西,我们可以克隆foo(将其余的子模块作为子模块拖入其中)。

git允许你这样做,所以为什么不利用它呢?

[...]什么是你的建议的 设置的 上涨空间/缺点。

有可能我的建议实施起来有点复杂。

相关问题