基于主干的开发
- 每天至少向主干Trunk提交一次。
- Trunk始终在可发布状态。
- 将新功能代码(或者未完成的代码)隐藏在功能开关后面。
- 使用branch by abstraction 进行重构。
- 可以开分支branch,但是一般不超过2天。
branch by abstraction
功能开关的优劣势
优点:
- 新功能和代码发布分离,减轻发布风险
- 迭代速度快,快速创新实验
- 可定制高级A/B测试、
- 相比复杂发布系统,投入成本相对低
- 没有分支开发的合并冲突问题。
缺点
- 代码侵入,技术债,需要定期清理
- 需要开关配置中心配合
- 需要devops文化和流程配合。