svn – 团队之间共享的库的单个或多个Git存储库

我正在研究如何/如果我应该从svn切换到git.

我目前在svn中有一组多层项目,这些项目是分层的,D使用C,它使用B使用A.实际部署的项目如X,Y,Z使用任何公共库A-D.目标是让未来的项目和其他团队共享基础库(A-D)并实现更好的分支控制.

在svn中如果我们希望允许其他团队使用库C而不涉及X,Y,Z那么它很简单,他们只是检查svn树的C位,如果这导致他们想要修补B,那么同上.他们从不接触X,Y,Z,即使他们在同一个实际的回购中.用git发生的事情并不是那么明显.

如果我想用git设置一些东西,你会建议我如何设置它以及你建议的设置有什么好处/缺点.

我正在寻找的功能是:

>简单标记(如果可能),因此可以轻松标记整个代码库的状态(使用常见的svn root或单个git repo简单)
>易于其他人集成/重用公共库A-D
>简单地让他们回复我们可以选择采取或忽略的建议修补程序/补丁(我想从git中获取的主要内容之一).
>团队可以为共享库提供有效的私有功能(因此他们可以标记它们并在自己的时间轴上自行修复)

Git似乎提供了我想要的东西,我只是不确定如何处理单个与多个回购问题.

If I wish to set something up using
git, how would you suggest I set it up
[…]

只需要使用多个git存储库(它们非常便宜,它们类似于许多小船而不是泰坦尼克号 – 换句话说,我发现它们很灵活,我喜欢灵活性).

偶尔我会协助一个像这样结构的项目

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

“服务器”,“客户端”,“文档”以及“工具”中的每个文件夹都是单独的git存储库.这允许专业团队成员克隆并正确处理他们希望工作的内容.

更不用说,如果我们只想提取所有内容,我们可以克隆foo(其余作为子模块).

令人敬畏的是,git允许你这样做,为什么不利用它呢?

[…] and what are the
upsides/downsides with your suggested
setup.

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

相关文章
相关标签/搜索