关于Gitlab若干权限问题

公司切入Gitlab来管理代码已经有一年多了,其中遇到不少权限问题,如没有权限clone、没有权限提交代码等等,这里作个总结. 权限分为访问权限和行为权限两个层次.测试

访问权限 - Visibility Level

这个是在创建项目时就须要选定的,主要用于决定哪些人能够访问此项目,包含3种spa

  • Private - 私有,只有属于该项目成员才有原先查看
  • Internal - 内部,用个Gitlab帐号的人均可以clone
  • Public - 公开,任何人能够clone

行为权限

在知足行为权限以前,必须具有访问权限(若是没有访问权限,那就无所谓行为权限了),行为权限是指对该项目进行某些操做,好比提交、建立问题、建立新分支、删除分支、建立标签、删除标签等.开发

角色

Gitlab定义了如下几个角色:产品

  • Guest - 访客
  • Reporter - 报告者; 能够理解为测试员、产品经理等,通常负责提交issue等
  • Developer - 开发者; 负责开发
  • Master - 主人; 通常是组长,负责对Master分支进行维护
  • Owner - 拥有者; 通常是项目经理

权限

不一样角色,拥有不一样权限,下面列出Gitlab各角色权限it

1. 工程权限
行为 Guest Reporter Developer Master Owner
建立issue
留言评论
更新代码  
下载工程  
建立代码片断  
建立合并请求    
建立新分支    
提交代码到非保护分支    
强制提交到非保护分支    
移除非保护分支    
添加tag    
建立wiki    
管理issue处理者    
管理labels    
建立里程碑      
添加项目成员      
提交保护分支      
使能分支保护      
修改/移除tag      
编辑工程      
添加deploy keys      
配置hooks      
切换visibility level        
切换工程namespace        
移除工程        
强制提交保护分支        
移除保护分支        

PS: 关于保护分支的设置,能够进入Settings->Protected branches进行管理table

2. 组权限
行为 Guest Reporter Developer Master Owner
浏览组
编辑组        
建立项目      
管理组成员        
移除组        
相关文章
相关标签/搜索