Azure DevOps Server 权限概述

在Azure DevOps Server (之前名称为TFS)中,权限是一个比较复杂的概念。从权限层级上来说,包括服务器级别、团队项目集合级别、团队项目级别和对象级别。

其中的对象级别,是指对TFS系统中具体的每种类型的数据、或者每个具体的数据,对于不同的成员(或组)可以设置不同的权限。

Git权限概述

对于Git库这个特定的数据对象,在Azure DevOps Server 中又分为代码库级别权限、库级别和分支级别的权限设置。就是说,可以针对不同的人员在不同的数据级别上设置不同的权限。

下面我们就对每种不同的权限和权限的作用级别,做一个表格说明:

权限名称

(英文)

权限名称

(中文)

说明

存储库

分支

Bypass policies when completing pull requests

完成拉取请求时绕过策略

可以通过选中覆盖分支策略来选择覆盖分支策略,并在完成PR时启用合并。

Read

读取

可以克隆、提取、拉取、和浏览库中的内容。

Remove others' locks

删除其他用户的锁定

可以删除其他用户设置的分支锁。锁定分支会阻止其他人向分支添加任何新提交,并阻止其他用户更改现有提交历史记录。

Rename repository

修改库名

可以修改库名

Manage permissions

管理权限

可以修改库或分支的权限

Manage notes

管理说明

可以修改说明(notes),注意notes不是commits

Force push (rewrite history, delete branches and tags)

强制推送(重写历史记录、删除分支和标记)

可以强制更新分支、删除分支和修改分支的提交历史记录。可以删除标签和注释。

Exempt From policy enforcement

免除策略

可以绕过分支策略并执行以下两个操作:
覆盖分支策略并完成不满足分支策略的PRS
直接推送到设置了分支策略的分支
适用于2015年至2018年的TFS更新2。(在Azure DevOps中,它替换为以下两个权限:完成请求时绕过策略,推送时绕过策略。)

Edit policies

编辑策略

可以编辑存储库及其分支的策略。

Delete repository

删除库

可删除库;默认用户可以删除自己创建的库

Create tag

创建标记

可以新建、推送标记

Create repository

创建库

可以创建新库、分叉库;创建者自动用于新库的全部权限。

Create branch

创建分支

1. 创建或发布新分支;缺少这个权限不影响用户在本地创建分支
2. 当用户新建的分支后,自动获得新分支的权限:贡献、修改策略、前置推送、管理权限、移除其他人的锁定

Contribute to pull requests

参与拉取请求

可以创建、评论和投票请求。

Contribute

参与

1. 在存储库级别上, 这个权限没有什么意义
2. 在库级别上,可以推送提交;可以完成拉取请求
3. 在分支级别上,可以推送提交,锁定分支

Bypass policies when pushing

推送时绕过策略

可以推送到启用了分支策略的分支。请注意,当具有此权限的用户进行将覆盖分支策略的推送时,推送会自动绕过分支策略,而不会出现任何选择加入步骤或警告。完成拉请求时绕过策略,推送替换时绕过策略免除策略实施。适用于Azure DevOps服务和Azure DevOps服务器2019。

设置权限

您可以从Web门户、tf命令行工具或使用tfsssecurity命令行工具管理每个git存储库或分支的安全性。在默认配置中,项目管理员被授予这些权限中的大部分(这些权限只出现在配置了Git存储库的项目中)。您可以管理所有git存储库或特定git repo的这些权限。下面的截图介绍了如何在Web浏览器中设置Git权限。

  1. 在项目导航中,查询到需要配置Git库权限的团队项目;
  2. 选项项目设置按钮,也可以使用键盘快捷方式Ctrl+S
  3. 选择存储库
  4. 在存储库中选择任意一个节点的数据对象(上图选择了分支)
  5. 添加或者选择现有用户组
  6. 根据需要配置权限后,点击“保存更改”,就可以为用户/组配置好所需要的权限。

微软DevOps MVP 张洪君 http://www.cnblogs.com/danzhang

--End--

Azure DevOps Server:Git权限设置的更多相关文章

  1. Azure DevOps Server (TFS)中代码文件换行问题解决方案(Git)

    之前写过一篇博客"探索TFS Git 库文件换行(CRLF)的处理方式",主要是针对TFVC代码库的. 下面这篇文章说明如何在TFS的Git库中处理代码换行的问题. 概述 在Azu ...

  2. Sourcetree 集成 Azure DevOps Server(Git)

    概述- SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端管理工具,同时也是Mercurial和Subversion版本控制系统工具.支持创建.克隆.提交 ...

  3. Azure DevOps Server 设置项目管理用户,用户组

    一,引言 Azure DevOps Server 搭建完成后,关于如何进行项目管理,项目成员管理等,我们接着上一篇文章,继续讲解 Azure DevOps Server 的用户,用户组.首先,我们需要 ...

  4. 在Azure DevOps Server (TFS) 中修改团队项目名称

    概述 [团队项目]: 在Azure DevOps Server (原名TFS)中,团队项目(Team Project)是一个最基本的数据组织容器,包含了一个团队或者信息系统中的所有信息,包括源代码.文 ...

  5. 你好,Azure DevOps Server 2019;再见,Team Foundation Server

    微软正式发布Azure DevOps Server 2019的第一个版本,作为Team Foundation Server (TFS)2018的升级版本和替代产品. 这是目前市面上唯一一款将产品名称冠 ...

  6. 微软 Azure DevOps Server 2019 Update 1 (TFS 2019.1)

    1.概述 微软在2019年5月发布Azure DevOps Server 2019后不到2个月的时间里,就快速准备好了第一个升级包(2019 Update 1),并计划在几周后发布正式版本.也许你还没 ...

  7. 在Azure DevOps Server (TFS)的流水线中编译和测试Xcode移动应用(iPhone)

    概述 Xcode是开发基于苹果macOS系统的桌面应用和移动应用的主要IDE工具.使用Azure DevOps Server (原名TFS)系统中的pipelines流水线功能,可以方便的集成Xcod ...

  8. 在macOS苹果电脑上安装Azure DevOps Server(TFS)代理

    1. 概述 MacOS是一套运行于苹果Macintosh系列电脑上的操作系统,是首个在商用领域成功的图形用户界面操作系统.Iphone应用软件的开发人员,都使用运行macOS的电脑或mini盒子进行软 ...

  9. Azure DevOps Server 入门实践与安装部署

    一,引言 最近一段时间,公司希望在自己的服务器上安装本地版的 Azure DevOps Service(Azure DevOps Server),用于项目内的测试,学习.本着学习的目的,我也就开始学习 ...

随机推荐

  1. UI设计工资有多高?怎么快速拿高薪?

    1.UI设计工资有多高? 有人不服UI设计待遇薪资高,那么下面就来看下一线城市的最新UI设计平均薪资待遇,大家也可以打开各招聘网站查询各行业平均薪资情况,一个行业的薪资高不高行业市场决定. 待遇较高说 ...

  2. Autofs

    1. Introduction autofs is a program for automatically mounting directories on an as-needed basis. Au ...

  3. PHP 判断字符串括号是否匹配

    <?php function aa($str) { $temp = array(); for ($i = 0; $i < strlen($str); $i++) { $t = $str[$ ...

  4. activiti 清库脚本(转)

    在使用activiti 的时候会经常遇到需要清空数据库中的数据,因此本文重点讲解如何解决该问题. 再删除数据的时候,需要注意有主外键约束的问题?下面罗列的DDL可以结合自身的业务需求进行灵活改造. D ...

  5. JavaScript学习笔记:基础知识点总结

    基础概念 JavaScript(以下简称Js)中数据类型:Number 字符串 布尔值 数组 对象(Js的对象是一组由键值对组成的无序集合) Js中基础概念:变量(概念和Java中变量概念类似 指示某 ...

  6. 【Web】网页字体图标的使用

    字体图标介绍 网页中图片有很多优点,但也有很多缺点,会增加文件的大小以及增加http请求.这时候就需要用的字体图标(iconfont).字体图标的优点,可以跟图片一样改变透明度.旋转等,本质上是文字, ...

  7. Gym-100883F、Gym-101095B状态压缩小结

    状态压缩的核心思想就是将数压缩成二进制,用二进制位来表示对应的位能取或者不能取,相比起来很方便. Eg:Gym-100883F 题意:给你两个字符串,要求你将两个字符串合起来,并不改变原先的顺序,一共 ...

  8. linux安装dpkg安装缺少依赖项的解决

    问题: dpkg: error processing package rxvt:i386 (--install): dependency problems - leaving unconfigured ...

  9. [ExecuteInEditMode]

    ExecuteInEditMode属性的作用是在EditMode下也可以执行脚本.Unity中默认情况下,脚本只有在运行的时候才被执行,加上此属性后,不运行程序,也能执行脚本. 与PlayMode不同 ...

  10. sqlserver的substring详细用法

    SQL 中的 substring 函数是用来截取一个栏位资料中的其中一部分. 例如,我们需要将字符串'abdcsef'中的‘abd’给提取出来,则可用substring 来实现: select sub ...