Skip to content

Latest commit

 

History

History
57 lines (44 loc) · 3.31 KB

File metadata and controls

57 lines (44 loc) · 3.31 KB

#基于 Merge Request 的开发流程

在 GitLab 上创建的项目,所有人都不应该直接往 master 分支推送代码。而是应该在个人的本地分支(一般fetch master分支)进行开发。并最终通过创建 Merge Request(类似 GitHub pull request)将代码合并到 master 分支。

##使用Merge Request几个好处

  1. 方便代码审查,及时发现问题
  2. 重要分支设置为受保护(master/staging),杜绝了有些问题代码被提交了,但项目经理不知道的情况;
  3. 每个任务都有一个对应的分支,互相隔离,所有的功能提交有据可查;

##开发流程一般步骤

  1. 在master拉出新的分支
  2. 在新的分支上编写代码
  3. 推送修改代码
  4. 创建MergeRequest
  5. 管理员审核代码与Merge代码

##创建merge Request 具体操作流程

  1. 点击左侧导航栏 Merge requests进入页面,点击New merge request
  2. 选择需要合并的分支和目标分支 image
  3. 填写合并标题(Title),描述(Description),审核人(Assignee) image
  4. 当确认无误后,点击 Submit merge request 按钮

TIPS

GitLab支持WIP标记( Work In Progress),只要在合并标题添加“[WIP]” 或 “WIP:”开头,Git会自动提醒管理员,当前分支未完成,不能进行合并操作。另外,在提交审查之前,请检查是否有删除WIP标记。 image image

##管理员审核代码与Merge代码具体操作流程

  1. 点击左侧导航栏 Merge requests进入页面
  2. 选择其中一个 Merge requests image
  3. 页面下方会有三个tab页面分别为:查看讨论留言(Discussion),查看提交记录(Commits)、查看更改内容(changes) image
  4. 查看讨论留言(Discussion)可以快速查看代码审核内提出问题留言
  5. 查看提交记录(Commits)可以查看代码提交记录,用于审查分支是否有异常提交 image
  6. 查看更改内容(changes)用于审查代码 image
  7. 当发现代码中有问题时候,管理员可以在相应的位置,点击气泡图案,进行Discussion image
  8. 而相关的开发同事应该就可以在Discussion Tab中找到问题,与管理员进行讨论或者修复bug,然后再次上传一次commit到该远程分支即可,不用再次提交Merge requests。然后返回到该Discussion点击resolve按钮,表示修复问题。 image image
  9. 当管理员认为可以进行合并时候,点击 merge 按钮即可完成一次Merge requests。 image

注意

  1. 如果当前分支与目标分支存在冲突(conflict)是不能够与当前分支进行合并。所以在准备提交之前,如果当前分支出现冲突,请根据情况把当前分支与目标分支先(rebase/merge),在本地解决冲突。因为只有代码作者本人才熟悉代码逻辑结构,解决冲突的责任应由本人操作。
  2. 如果当前工程含有CI/CD部署,一旦分支合并就会自动执行部署任务。