合并请求的授权
在GitLab中有两种主要的合并请求流的方法:
- 处理受保护的分支在单个存储库中。
- 使用权威项目的分支。
受保护支路流
使用受保护的分支流,每个人都在同一个GitLab项目中工作。
项目维护者获得Master访问权限,常规开发人员获得Developer访问权限。
维护者将权威分支标记为“Protected”。
开发人员将特性分支推到项目中,并创建合并请求,以审查他们的特性分支并将其合并到受保护的分支之一。
默认情况下,只有具有Master访问权限的用户才能将更改合并到受保护的分支中。
优势
- 更少的项目意味着更少的混乱。
- 开发人员只需要考虑一个远程存储库。
缺点
- 手动设置每个新项目所需的受保护分支
分叉的工作流
使用分叉工作流,维护者可以获得Master访问权限,而常规开发人员可以获得对权威存储库的Reporter访问权限,这禁止他们对其进行任何更改。
开发人员创建权威项目的分支,并将他们的功能分支推到他们自己的分支。
为了将他们的更改转化为master,他们需要创建一个跨fork的合并请求。
优势
- 在适当配置的GitLab组中,新项目自动获得常规开发人员所需的访问限制:为新项目配置授权的手动步骤更少。
缺点
- 项目需要保持他们的分支是最新的,这需要更高级的Git技能(管理多个远程)。