参考来源 从微信后端仓库发展史谈谈单仓和多仓
小仓核心理念:
- 趋势:代码仓库应该被合理化为而非趋于整合;
- 一致性:代码仓库的划分应该是有标准的;
- 松耦合:仓库不应该是和组织架构,编译工具强相关
- 独立性:仓库是一个完整构建单元,应该包括代码、单测用例、构建脚本、用户手册等;
小仓优势:
- 分治
- 发布方式;
- 构建系统;
- 非业务部分可以更好与开源相结合;
- 更自由地权限控制
- 易用
- 符合github工作模式,易上手;
- 完全复用工具链;
- 专注开发,不被不相关的业务影响;
- 更加轻量级的开放的评审流程;
挑战及应对
- 分仓
- 公共库
- 非开源私有库
- 一致性
- 服务契约管理
- 第三方依赖管理
- 分支管理
- 质量红线
- 统一工具链