一. 结论
Github flow:最简单
小型项目,持续部署,自动化测试程度高,发布流程简单
Git flow:复杂但最常用
大型项目,发布周期长,需要同时维护多个版本,发布流程复杂
表格提供了不同情况下推荐采用的分支策略,帮助团队根据自己的特点和需求选择最合适的工作流程。
例如在自动驾驶软件开发中,软件生命周期长达 1-2 年,需同时维护多个平台的开发,需要经过严格的测试环节才能发布。所以会基于 git flow 做分支管理。
二. github-flow VS git-flow
1. Github Flow
多用于 Web 应用程序这种持续交付的项目模式,一般不必支持运行多个版本的软件
1.1 github-flow 框架
从图中可知, Github Flow 只有两个分支:
(1)Master(main): 主分支包含该项目的所有可直接用于发布部署的代码