一、分支(branch)及标签(tag)命名规范
- 主干:master
- 开发分支:dev
- 特性分支:feature/20181123_yourName_featureName
- 修复分支:bugfix/20181123_yourName_featureName
- 发布分支:release/prod_20181123
- 临时发布分支:release/temp_20181123(发布完成后及时删除)
- 演示分支:release/poc_20181123
- 标签:release/prod_20181123_tag
二、操作流程
- 新需求:
- 基于master分支创建新的特性分支
- 在新特性分支上开发
- 开发完成后将特性分支上的新代码合并或cherry-pick到dev分支
- 测试者可以自行基于dev分支创建其测试分支
- 测试通过后,基于master新建发布分支,将新特性从dev分支合并过来
- 生产基于发布分支打包
- 经生产环境验证无误后,将release分支合并到master
- 在master上打tag
- Bug修复:
- 基于master分支创建新的bugfix分支
- 在新bugfix分支上修复
- 开发完成后将bugfix分支上的新代码合并或cherry-pick到dev分支
- 测试者可以自行基于dev分支创建其测试分支
- 测试通过后,基于master新建发布分支,将新特性从dev分支合并过来
- 生产基于发布分支打包
- 经生产环境验证无误后,将release分支合并到master
- 在master上打tag
三、操作规范
- release分支合并到master分支前,需要走merge request
- 多个功能特性可以等到一起合并发布,紧急发布可以灵活处理。