Gitlab 项目分支管理的一种策略

master + -----> release/1.0 (1) | + ------------> issue/1 (2) | | | | |
master   + -----> release/1.0                                     (1)   |            + ------------> issue/1                     (2)   |            |                  |    |            |                                             (6)
  1. 项目 Owner 负责创建当前待发布的分支,如master> git checkout -b release/1.0,

  2. 项目 Developer 根据已提交的 issue 创建对应的开发分支,如 release/1.0> git checkout -b issue/1,

  3. 项目 Developer 完成开发后,发起由issue/1到release/1.0的Merge Request给项目 Owner

可并行开发 issue, 同样执行步骤 2 ~3

如何用-gitlab-做团队内的-code-review

  1. 项目 Owner 审查过代码后,合并代码才可提交测试, 若出现 Bug,则执行执行步骤 2 ~3

  2. 项目 Tester 测试全部通过后,发起由release/1.0到master的Merge Request给项目 Owner

  3. 项目 Owner 合并代码并打标签v1.0,如master> git tag v1.0,而后才可发布上线。

无测试参与的项目

比如开发公共库或中间服务的项目,这种情况下,可以不拉 release分支,而直接在 master上拉 issue分支,但Merge Request的步骤不能缺少

注意

合并后的分支应删除掉。

分支说明

  1. master

最新的提交版本应该与线上版本保持一致

  1. 必须是 Protected, 仅限项目 Owner 提交或合并

  2. release/{version}

当前开发分支,version是版本号

  1. 最新提交版本应该与测试环境保持一致

  2. issue/{id}

对应 issue 的开发分支

关键字:gitlab, issue, release, owner