在gitlab上面创建一个新的项目之后,添加成员到这个项目,但给的是developer开发者角色,如果被添加的那个成员需要在主干代码上push上传代码,是不能成功的,因为默认主干代码受保护,不能让开发者角色push和merge代码的,下面就来看下如何在不修改成员角色的权限的情况下,解决这个问题
工具/原料
-
gitlab
方法/步骤
-
打开浏览器访问您的gitlag服务的web页面地址,使用管理员用户或者创建项目的那个账户登录进去,然后进去到指定的项目页面
-
在如图所示的右侧,点击选择Protected Branches(保护分支)选项
-
从图中可以看到,之前没有设置过任何的分支保护,但master主干是默认受保护的,并且默认是不能push和merge代码的
-
如果只是取消保护的话,只需要点击Unprotect按钮,解除保护即可,可当您需要能push代码但不能merge的时候,就需要单项勾选Deverlopers can push,但已保护的是没有勾选保存按钮的,需要先取消保护,然后在上方重现勾选点击保护
-
默认的master取消保护之后,在如图所示的位置就可以重现选项master,然后勾选Developer can push的复选框,然后再点击Protect
-
如图所示,到此master主干重新添加到保护列表中了,但此时Developer角色用户是可以push代码,而不能merge代码的
-
默认的主干是受保护的,同样我们可以设置其它的分支到保护列表中,设置方式类似
-
默认主干不可以,但分支代码是可以push的,如果没有master分支,其它的一个分支会默认成为主干