我们使用Visual Studio 2010(在C#中)进行开发,并在不久前从SVN迁移到GIT.现在我们尝试将我们的存储库(相当大的~~30,000个文件)拆分为许多git存储库 - 每个解决方案一个.这些解决方案共享一些项目,主要是我们在内部开发的库,并希望从所有解决方案中添加.
新的存储库具有平面布局.每个项目的一个子目录(共享项目是子模块).在大型旧仓库中,项目采用树形结构.
子模块中的外部引用会出现问题.在新的repos中,引用项目的路径可能是"...... libs\someproject",而在新布局中,正确的路径是"..\someproject".
我们已经有过一些与此有关的编辑大战,并不热衷于此.
我能想到的半生不熟的解决方案:
在... csproj.user中使用"引用路径"并从版本控制中排除此文件(必须为每个开发人员重做并在每次清理后进行重做)
为每种情况使用分支,并尝试教每个人应该去哪里"真正的"提交以及"环境变化"提交应该去哪里(子模块已经不是最简单的概念......)
嵌入二进制文件而不是子模块(但是开发子模块的更改呢?不同的log4net版本呢?)
有谁知道一个理智的解决方案?