master
-----> release/1.0 (1) | + ------------> issue/1 (2) | | | | | <----- MR ------ + (3) | | (4)<— MR —+ (5) | tag:v1.0 (6) 项目 Owner 负责创建当前待发布的分支,如master> git checkout -b release/1.0,项目 Developer 根据已提交的 issue 创建对应的开发分支,如 release/1.0> git checkout -b issue/1,
项目 Developer 完成开发后,发起由issue/1到release/1.0的Merge Request给项目 Owner,
可并行开发 issue, 同样执行步骤 2 ~3
如何用-gitlab-做团队内的-code-review
项目 Owner 审查过代码后,合并代码才可提交测试, 若出现 Bug,则执行执行步骤 2 ~3,
项目 Tester 测试全部通过后,发起由release/1.0到master的Merge Request给项目 Owner,
项目 Owner 合并代码并打标签v1.0,如master> git tag v1.0,而后才可发布上线。
无测试参与的项目
比如开发公共库或中间服务的项目,这种情况下,可以不拉 release分支,而直接在 master上拉 issue分支,但Merge Request的步骤不能缺少。
注意
合并后的分支应删除掉。
分支说明 master
最新的提交版本应该与线上版本保持一致
必须是 Protected, 仅限项目 Owner 提交或合并
release/{version}
当前开发分支,version是版本号
最新提交版本应该与测试环境保持一致
issue/{id}
对应 issue 的开发分支