大型 C++ 项目如何管理代码依赖?
大型项目绝对不会那样手动复制文件,也不会简单地添加现有项。他们有成熟的工程化方案。
大型项目的 5 种主流方案
方案 1:子模块/子项目(最常见)
原理:把依赖的代码作为独立的 Git 子模块或独立项目,通过构建系统链接。
MyLargeProject/
├── src/
│ └── main.cpp
├── third_party/ ← 第三方代码
│ ├── xlog/ ← Git Submodule
│ │ ├── CMakeLists
│ │ └── /
│ └── json/ ← Git Submodule
│ └── ...
├── CMakeLists ← 顶层构建配置
└── ← 子模块配置

