gerrit设置非小组成员禁止下载代码
对gerrit有所了解的同学,都知道gerrit 是我们常用的一个来做代码审核的工具,其中的权限管理,是一个非常重要的环节,关于每个权限的使用范围,可以参考博客https://blog.csdn.net/chenjh213/article/details/50571190,算是很详细的介绍,关于其中的小组,我们有这样的场景:代码仓是一个很重要的代码仓,只给指定的人员使用,其他人是不能下载查看的。这时候就涉及到了小组成员和默认权限的关系,gerrit的思想是:当默认权限和小组权限发生冲突时,以小组权限为主,也就是说,小组权限会覆盖掉默认权限。
我们现在有两个组:group1包含了全公司的开发人员,比如user1、user2、user3、user4,group2包含了负责feature_repo的开发人员,比如user1、user2,当然group2的user1、user2就是group1里的user1、user2。
需要设置feature_repo项目只给group2小组成员下载,group1里的user3、user4是不能下载的
步骤如下:
1.在people里设置小组如下:
在group1中添加全公司人员,如user1、user2、user3、user4,group2添加feature_repo的开发人员,如user1、user2,
2.然后创建两个空的仓库,分别叫group1,group2。其中仓库group1试用默认权限,如下:
仓库group2,设置权限如下:
push:设置禁止非小组人员push代码
Read:设置非小组人员克隆代码
3.设置feature_repo仓库的权限时,使用group2,如下:
4最后非group2的人员下载feature_repo时,就下载不到代码
成员user3,user4不在group2中,feature_repo又只允许group2的成员下载,那么user3或者user4这类非group2的人员下载feature_repo时,就下载不到代码,效果如下:
显示‘unable to checkout ’ 下载不到代码(虽然会在本地创建一个文件下)
注意,如果仓库代码多的话,执行克隆代码,前面一段时间看上去的是在显示下载,其实只是下.git 文件夹,没有实际下载代码,所以依然下载不到代码,这样非小组成员还是看不到代码,就是不给他看~~
gerrit设置非小组成员禁止下载代码的更多相关文章
- 关于我与小组成员逐步升级C代码时的一些感想【第二次作业】
#include<stdio.h> #include<stdlib.h> #include <time.h> int main(){ srand(time(NULL ...
- Windows 和 Linux下使用socket下载网页页面内容(可设置接收/发送超时)的代码
主要难点在于设置recv()与send()的超时时间,具体要注意的事项,请看代码注释部分,下面是代码: #include <stdio.h> #include <sys/types. ...
- Newtonsoft.Json高级用法 1.忽略某些属性 2.默认值的处理 3.空值的处理 4.支持非公共成员 5.日期处理 6.自定义序列化的字段名称
手机端应用讲究速度快,体验好.刚好手头上的一个项目服务端接口有性能问题,需要进行优化.在接口多次修改中,实体添加了很多字段用于中间计算或者存储,然后最终用Newtonsoft.Json进行序列化返回数 ...
- 【C#】让ReSharper灰色显示未使用的非私有成员的关键
环境:VS2010+ReSharper8 先说答案: 1.在Inspection Severity中设置Non-private accessibility为Warning.如图: 该页面在ReShar ...
- java类成员变量与代码块初始化
首先根据下面的这个一段代码:引入关于java初始化顺序的问题public class InitationTest extends Person { public InitationTest() { S ...
- C++_static与非static成员(函数)
static与非static成员(函数) <C++ Primer>第4版399页: 对于特定类类型的全体对象而言,访问一个全局变量有时是必要的.然而,全局变量会破坏封装:对象需要支持特定 ...
- Keil MDK下如何设置非零初始化变量
一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位而重启现场设备.而keil mdk在默认情况下,任何形式的复位都会将RAM区的非初始 ...
- axis1,xfire,jUnit 测试案列+开Web Service开发指南+axis1.jar下载 代码
axis1,xfire,jUnit 测试案列+Web Service开发指南(中).pdf+axis1.jar下载 代码 项目和资源文档+jar 下载:http://download.csdn. ...
- Keil MDK下如何设置非零初始化变量(转)
源:Keil MDK下如何设置非零初始化变量 一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位而重启现场设备.而keil mdk在默 ...
随机推荐
- 命名空间与Autoload
命名空间是为了防止函数名冲突 当php编译器找到未定义类时,就会自动去调用__autoload($class)这个函数,$class就代表这个未定义的类名相对于当前项目根目录所在路径 php5.3 ...
- go语言字符串处理
string包: 查找字串是否在指定的字符串中:strings.Contains("seafood", "foo")//true ...
- p740+5802+外置磁带机连线
扩展柜型号5802 主柜型号p740 下图是连接线说明 需要连12X 和 SPCN 单个磁带机SAS线两根连接单个PCI否则,磁带无法提供多个分区使用 通过HMC或者查看资源情况 HMC配置Lpar分 ...
- 初级ai思维导图,基础人工智能设计图
2017年2月8日09:35:46 仅供代码和逻辑设计图纸,只提供一个参考设计,后面可能会更新具体实施说明
- 品尝阿里云容器服务:用nginx镜像创建容器,体验基于域名的路由机制
在前一篇博文中我们了解了阿里云容器服务的路由机制: 请求 -> 负载均衡80端口 -> 容器主机9080端口 -> acsrouting路由容器80端口 --基于域名--> W ...
- ubuntu16.04使用Qt开发ROS
本文介绍一种Qt下进行ROS开发的完美方案,使用的是ros-industrial的Levi-Armstrong在2015年12月开发的一个Qt插件ros_qtc_plugin,这个插件使得Qt“新建项 ...
- Codeforces 191A - Dynasty Puzzles - [DP]
题目链接:https://codeforces.com/problemset/problem/191/A 题意: 给出 $n$ 个小写字母组成的字符串,两个字符串如果前者的最后一个字母与后者的首字母相 ...
- [No0000FA]C# 接口(Interface)
接口定义了所有类继承接口时应遵循的语法合同.接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分. 接口定义了属性.方法和事件,这些都是 ...
- [No0000DE]C# XmlHelper XML类型操作 类封装
using System; using System.Data; using System.IO; using System.Text; using System.Threading; using S ...
- vue 错误分析
1 点击事件发生的错误 原因是,重复触发事件函数导致 改为不一样的名字即可 2 提示 : “ vuex] Expects string as the type, but found undef ...