gitlab如何实现代码分支管理(只有思路没有解决方案)

当前碰到的问题(现结单采取策略一):

策略一、每个开发者都能够push代码到dev分支,而没有审核,同时也能发起由dev分支向master分支的merge请求,这无法实现代码控制。

流程如下:

从源仓库clone代码到本地

向源仓库dev分支push代码,开发者没有权限push到master分支

开发者可以发起dev向master分支的merge请求。(所有dev都有权限发起merge请求,但是只有管理员做merge)

管理员review代码接收merge请求

l master打一个tag作为本次上线版本

 

策略二、理想的环境是,用户每一次push都是提交到自己的gitlab仓库,然后再从自身的gitlab仓库发起对源仓库的merge代码合并。管理员在这一刻起到代码审核的作用。但是这导致了流程的复杂化。

流程如下:

从源仓库fork代码到自己主页

l clone主页代码到本地

向自己的主页push代码

由自己主页向源仓库dev分支发起merge请求

管理员review审核代码是否允许merge请求

所有开发人员完成一阶段的开发后,管理员向源仓库master发起merge请求

l master打一个tag作为本次上线版本

 

策略三、任意开发者都不能向dev push和merge,只能通过commit branch然后提交merge来合并代码。(策略三解决冲突很麻烦,暂时不使用)

从源仓库clone代码到本地

l 在本地创建功能分支,然后把分支提交到平台上

在平台上发起merge请求,把feature分支合并到dev分支。(不允许向master分支发起merge)

管理员review代码接收merge请求

l master打一个tag作为本次上线版本

你可能感兴趣的:(Git)