- master(主分支,永远是可用的、稳定的、可直接发布的版本,不能直接在该分支上开发)
- develop(开发主分支,代码永远是最新,所有新功能以这个分支来创建自己的开发分支,该分支只做只合并操作,不能直接在该分支上开发)
- feature-xxx(功能开发分支,在develop上创建分支,以自己开发功能模块命名,功能测试正常后合并到develop分支)
- release(预发布分支,在合并好feature分支的develop分支上创建,主要是用来提测的分支,修改好bug并确定稳定之后合并到develop和master分支,然后发布master分支)
- release-fix(功能bug修复分支,在release上创建分支修复,修复好提测的bug之后合并回release分支。)
- hotfix-xxx(紧急bug修改分支,项目上线之后可以会遇到一些环境问题需要紧急修复,在对应版本的release分支上创建,流程跟release分支相似,修复完成后合并release分支,根据情况判断需不需要再合并到develop和master分支)
注意事项:
- 一个分支尽量开发一个功能模块,不要多个功能模块在一个分支上开发。
- 开发过程中,如果组员A开发的功能依赖组员B正在开发的功能,可以待组员B开发好相关功能之后,组员A直接pull组员B的分支下来开发,不需要先将组员B的分支 merge 到develop分支。
- feature 分支在申请合并之前,最好是先 pull 一下 develop 主分支下来,看一下有没有冲突,如果有就先解决冲突后再申请合并。