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 主分支下来，看一下有没有冲突，如果有就先解决冲突后再申请合并。