对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 文件夹,没有实际下载代码,所以依然下载不到代码,这样非小组成员还是看不到代码,就是不给他看~~

最新文章

  1. iOS开发之第三方库的学习--hpple的使用
  2. 看《css知多少》的一些总结
  3. 如何用Visual Studio 2013 (vs2013)编写C语言程序 (转)
  4. python安装paramiko模块
  5. 利用 NSSortDescriptor 对 NSMutableArray 排序
  6. mysql 段错误 (core dumped)
  7. Control.Refresh Control.Invalidate 和 Control.OnPaint之间的联系和区别
  8. Linux中的MyEclipse配置Hadoop
  9. baike并行计算概念
  10. php获取前一天,前一个月,前一年的时间
  11. StackExchange.Redis Client
  12. php7连不上mysql求帮忙!!!
  13. Coursera 机器学习笔记(五)
  14. ASP.NET Core 认证与授权[2]:Cookie认证
  15. event.target 和 event.currentTarget 的区别
  16. 我发起并创立了一个 EPWA 的 开源项目
  17. python-directory
  18. 初识XMind基本操作
  19. cvLogPolar函数详解
  20. Git warning:LF will be replaced by CRLF in readme.txt的原因与解决方案

热门文章

  1. 设备重力感应 window.DeviceOrientationEvent
  2. 使用介质设备安装 AIX 以通过 HMC 安装分区
  3. 一块移动硬盘怎样兼容Mac和Windows系统,并且可以在time machine上使用
  4. 掌握业界最新工程实践 | 了解AIOps下一代微服务等最新趋势
  5. HDU 4699 - Editor - [对顶栈]
  6. [No0000B3].NET C# 单体模式(Singleton)
  7. 1.7Oob 静态变量静态方法
  8. python与pycharm安装
  9. iOS 模拟器运行不能联网 PAC Fetch failed with error
  10. 制作STM32开发板要买的电子元器件