主干开发是什么
短生命周期分支、频繁合入主干,未完成功能用特性开关隐藏,直接减少合并冲突与集成风险。分支寿命通常少于一天到数天;配套是小批量提交、特性开关、自动化测试与主干可用性保障。DORA 研究将主干开发列为交付绩效相关能力之一。注意:主干开发不等于直接在主干提交,分支加评审加快捷合入同样成立,核心是缩短分支寿命、让集成持续发生,而不是攒到最后一次性合并。
基本信息
| 分支寿命 | 通常少于一天到数天 |
|---|---|
| 配套 | 小批量提交、特性开关、自动化测试与主干可用性保障 |
| 研究依据 | DORA 将主干开发列为交付绩效相关能力之一 |
| 边界 | 不等于直接在主干提交,仍可采用分支加评审 |
| 主干要求 | 主干保持可发布,绿主干是团队纪律 |
典型使用场景
- 高频发布团队:每次合入小批量变更,发布与回滚都更容易。
- 多人同改一个模块:缩短分支寿命直接减少冲突面积。
- 未完成功能:开在特性开关后面先合入,避免长命分支堆积。
- 评审负载均衡:小变更评审快、质量更高,评审不再成为瓶颈。
- 主干保障:主干绿需要自动化测试与快速回滚能力作支撑。
- 渐进迁移:从长分支模式过渡,先缩短分支寿命与提高合入频率,不一次到位。
节奏参考
节奏参考
git switch main && git pull --ff-only
git switch -c feat/order-export
git commit -m "feat: 出口订单导出"
git push -u origin feat/order-export
# 尽快通过评审合入主干,而不是攒一周主干开发不等于直接在主干提交:分支加评审加快捷合入同样成立。
特性开关是前提:没有开关还想短分支,未完成功能会直接暴露给用户。
主干常红时不要强推主干开发:先把主干绿当成纪律,否则频繁合入只会把不稳定扩散给所有人。