Команда разрешения Git

Azure Repos | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 | TFS 2017 | TFS 2015 | VS 2017 | VS 2015 | VS 2013

Изменяет список управления доступом (ACL) пользователя и отображает параметры авторизации для репозитория Git или ветви в репозитории Git.

Требования.

  • Чтобы просмотреть разрешения, необходимо иметь возможность просмотра артефакта для запрашиваемого типа данных: Просмотр сведений на уровне коллекции для коллекций проектов, Просмотр сведений о проекте на уровне проекта и Чтение для репозитория (и ветвление при просмотре разрешений для ветви).

  • Для управления разрешениями необходимо иметь разрешения на управление для требуемого артефакта.

    Дополнительные сведения см. в разделе ссылки на разрешения и группы.

tf git permission [/allow:(* |perm1[,perm2,...]] 
                  [/deny:(* |perm1[,perm2,...])]
                  [/remove:(* |perm1[,perm2,...])]
                  [/user:username1[,username2,...]]
                  [/group:groupname1[,groupname2,...]]
                  /collection:TeamProjectCollectionUrl
                  [/teamproject:TeamProjectIdentifier]
                  [/repository:RepositoryIdentifier]
                  [/branch:BranchName]
                  [/login:username,[password]]

Параметры

Параметр Описание
/allow: _ ( _ | perm1 [, perm2,...]) * Разрешения, которые необходимо разрешить.
/Дени: _ ( _ | perm1 [, perm2,...]) * Отменяемые разрешения.
/Remove: _ ( _ | perm1 [, perm2,...]) * Разрешения для удаления (иногда называются неустановленными). В одном вызове можно использовать все три /allow, /Дени и /Remove . Дополнительные сведения о взаимодействии параметров allow, Deny и Remove см. в разделе Параметры разрешений.
/User:UserName1 [, UserName2,...] Пользователь или пользователи, для которых разрешены, запрещены или удалены. Необходимо указать по меньшей мере одного пользователя или группу.
/грауп:groupname1 [, groupname2,...] Группы или группы, для которых необходимо разрешить, запретить или удалить. Необходимо указать по меньшей мере одного пользователя или группу. Группы и отдельные пользователи могут использоваться совместно.
/Collection:url_коллекции_командных_проектов Указывает URL-адрес коллекции проектов, которая содержит разрешения для просмотра или изменения. Пример: http://myserver:8080/tfs/DefaultCollection или https://fabrikam-fiber.visualstudio.com. Это обязательный параметр.
/TeamProject:теампрожектидентифиер Указывает имя проекта, содержащего разрешения для просмотра или изменения.
/репоситори:репоситоридентифиер Указывает имя репозитория, содержащего разрешения для просмотра или изменения.
/бранч:бранчнаме Указывает имя ветви, которая содержит разрешения для просмотра или изменения. При указании /бранч необходимо также указать /репоситори.
/login:имя_пользователя, [пароль] Указывает учетную запись пользователя, которая должна использоваться для запуска команды. См. раздел Использование команд управления версиями Team Foundation.

Список разрешений, которые можно администрировать с помощью команды, см. в разделе пространства имен разрешений репозитория Git tf git permission .

Примеры

Примечание

Следующие примеры разбиваются на несколько строк для удобства чтения. Чтобы скопировать и вставить их в командную строку и выполнить их, сначала скопируйте их и вставьте в Блокнот или другое средство, а затем измените их, чтобы команды находились в одной строке.

Просмотр разрешений уровня коллекции

В следующих примерах перечислены разрешения для коллекции Fabrikam-Fiber.

tf git permission /collection:https://dev.azure.com/fabrikam-fiber 
                  /login:FabrikamUser@hotmail.com,FabrikamPassword

Просмотр разрешений уровня проекта

В следующих примерах перечислены разрешения уровня проекта для проекта FabrikamFiber, который находится в коллекции Fabrikam-Fiber.

tf git permission /collection:https://dev.azure.com/fabrikam-fiber 
                  /teamproject:FabrikamFiber
                  /login:FabrikamUser@hotmail.com,FabrikamPassword

Просмотр разрешений уровня репозитория

В следующих примерах перечислены разрешения уровня проекта для репозитория FabrikamFiber, который находится в проекте FabrikamFiber.

tf git permission /collection:https://dev.azure.com/fabrikam-fiber 
                  /teamproject:FabrikamFiber 
                  /repository:FabrikamFiber 
                  /login:FabrikamUser@hotmail.com,FabrikamPassword

Команды "требовать папки ветвей"

В следующих примерах показано, как создать политику ветви, обеспечивающую соблюдение следующих ограничений.

  • masterМожет существовать только в корне репозитория.
  • Всем пользователям будет разрешено создавать ветви в features/ users/ папках и.
  • Администраторы смогут создавать ветви в releases/ папке.

В этом примере мы будем использовать следующую коллекцию, проект и репозиторий:

Сначала заблокируйте разрешение CREATE Branch в корне репозитория для участников проекта.

tf git permission /deny:CreateBranch 
                  /group:[FabrikamProject]\Contributors 
                  /collection:https://dev.azure.com/fabrikam-fiber/ 
                  /teamproject:FabrikamProject 
                  /repository:FabrikamRepo

Затем разрешите участникам создавать ветви в features и users .

tf git permission /allow:CreateBranch 
                  /group:[FabrikamProject]\Contributors 
                  /collection:https://dev.azure.com/fabrikam-fiber/ 
                  /teamproject:FabrikamProject 
                  /repository:FabrikamRepo 
                  /branch:features

tf git permission /allow:CreateBranch 
                  /group:[FabrikamProject]\Contributors 
                  /collection:https://dev.azure.com/fabrikam-fiber/ 
                  /teamproject:FabrikamProject 
                  /repository:FabrikamRepo 
                  /branch:users

Разрешить администраторам создавать ветви в releases .

tf git permission /allow:CreateBranch 
                  /group:"[FabrikamProject]\Project Administrators" 
                  /collection:https://dev.azure.com/fabrikam-fiber/ 
                  /teamproject:FabrikamProject 
                  /repository:FabrikamRepo 
                  /branch:releases

Наконец, разрешите администраторам создавать ветви с именем master (в случае случайного удаления).

tf git permission /allow:CreateBranch 
                  /group:"[FabrikamProject]\Project Administrators" 
                  /collection:https://dev.azure.com/fabrikam-fiber/ 
                  /teamproject:FabrikamProject 
                  /repository:FabrikamRepo 
                  /branch:master