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

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Команда tf git permission изменяет список управления доступом пользователей (ACL) и отображает параметры авторизации для репозитория Git или ветви в репозитории 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>,...]) Разрешения для разрешения.
/deny:(* |<perm1>[,<perm2>,...]) Разрешения на запрет.
/remove:(* |<perm1>[,<perm2>,...]) Разрешения на удаление, иногда называются не заданными. Вы можете использовать все три /allow/deny, а /remove также в одном вызове. Дополнительные сведения о том, как взаимодействуют параметры разрешения, запрета и удаления, см. в разделе "Параметры разрешений".
/user:<username1>[,<username2>,...] Пользователь или пользователи, для которых можно разрешить, запретить или удалить разрешения. Необходимо указать по крайней мере одного пользователя или группы.
/group:<groupname1>[,<groupname2>,...] Группы или группы, для которых необходимо разрешить, запретить или удалить разрешения. Необходимо указать по крайней мере одного пользователя или группы. Группы и отдельные лица можно использовать вместе.
/collection:<TeamProjectCollectionUrl> Указывает URL-адрес коллекции проектов, содержащей разрешения для просмотра или изменения. Пример: http://myserver:8080/tfs/DefaultCollection или https://fabrikam-fiber.visualstudio.com. Этот параметр является обязательным.
/teamproject:<TeamProjectIdentifier> Указывает имя проекта, содержащего разрешения для просмотра или изменения.
/repository:<RepositoryIdentifier> Указывает имя репозитория, содержащего разрешения для просмотра или изменения.
/branch:<BranchName> Указывает имя ветви, содержащей разрешения для просмотра или изменения. При указании /branch также необходимо указать /repository.
/login:<username>[,<password>] Указывает учетную запись пользователя для выполнения команды. См . команды управления версиями Team Foundation.

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

Примеры

Примечание.

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

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

В следующем примере перечислены разрешения для 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

Требовать команды папок ветви

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

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

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

  • /collection: https://fabrikam-fiber.visualstudio.com
  • /teamproject: FabrikamProject
  • /repository FabrikamRepo

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

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

Наконец, разрешите администраторам создавать вызываемую mainветвь, если она когда-либо удаляется случайно.

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