当前,我的公司在SVN存储库中具有Visual Studio隔离,其组织如下:
SolutionFolder (~3.5 GB)
|-> SolutionName.sln
|-> .. Some source code folders... (~250 MB)
|-> ThirdParty (~3 GB)
|-> Tools
| -> Tool1
| -> Tool2
Tool1和Tool2是独立构建的(具有自己的解决方案),但是会生成在主要构建中使用的可执行文件。ThirdParty文件夹包含项目的所有依赖项,包括一些预编译的100+ MB .lib文件和大型库(如boost)。
将所有功能都包含在一个SVN存储库中非常方便,这样(1)开发人员只需执行一次签出操作,(2)我们就无需跟踪每个版本的构建所需的依赖项版本。另一方面,要花些时间检查此仓库。
将这个项目结构转移到git的最佳方法是什么?大概最好是从主存储库中排除ThirdParty以及可能的工具,但是我们希望一步就可以轻松下载ThirdParty,并且我们希望对其进行版本控制(并且主存储库和ThirdParty / Tools之间的版本不匹配会很糟糕)。
在这一点上,我对保存历史不感兴趣,只是对如何组织这样的项目不感兴趣。