工作机制
主干开发把 main 作为唯一长期分支。工程师先 rebase 到最新主干,把改动拆成小片提交,至少每天推送一次;工作分支只存在数小时而非数周。每次推送都会触发持续集成,未完成的功能用功能开关隐藏,保证主干始终可发布。发布直接从主干切出,而不是从稳定分支。
适用场景与取舍
当团队持续部署、自动化测试快速可靠,并且能把未完成改动藏在开关后面时,主干开发最有效,适合共享代码所有权的产品团队。与功能分支相比,它用隔离换集成频率:冲突更早暴露、修复成本更低。代价是必须维护稳定的 CI、可靠的测试覆盖和开关清理纪律;测试不稳定或评审缓慢时,每日集成会变成每日故障。
具体示例
开发者修复结算缺陷:先 rebase,提交约四十行的改动,推送并等待 CI 通过,一小时内完成合并。更大的改版则通过 checkout_v2 开关先对内部用户开放,确认后再逐步放量。
常见误解与关联概念
主干开发并不禁止分支,禁止的是长期分叉;它也不跳过评审,而是把评审前移到结对编程或小型合并请求中。功能分支提供隔离但延迟集成,代码评审让主干上的小提交保持安全,渐进式交付则在合并后控制暴露范围。