Compartilhar via


Configurar políticas de repositório Git usando um arquivo de configuração

Azure DevOps Services

As políticas de ramo ajudam as equipes a proteger seus ramos importantes de desenvolvimento. As políticas impõem a qualidade do código da sua equipe e alteram os padrões de gerenciamento. Para obter uma visão geral das configurações de política que você pode definir, consulte as configurações e políticas do repositório Git.

Você pode configurar políticas de branch para seu repositório usando os vários az repos policy comandos. Os comandos de política aceitam um único escopo. Eles funcionam em uma única combinação de repositório, branch e tipo de correspondência. Se você quiser aplicar a mesma política em vários escopos, use um arquivo de configuração de política.

Digamos que você queira criar uma política manual de build de fila. Ele abrange todas as pastas de ramos que começam com "release" e também no ramo principal.

Primeiro, crie um arquivo de configuração de política para a política de build, incluindo os vários escopos de aplicativo.

{
  "isBlocking": true,
  "isDeleted": false,
  "isEnabled": true,
  "revision": 1,
  "settings": {
    "buildDefinitionId": 22,
    "displayName": "Manual Queue Policy",
    "manualQueueOnly": true,
    "queueOnSourceUpdateOnly": false,
    "scope": [
      {
        "matchKind": "Prefix",
        "refName": "refs/heads/release",
        "repositoryId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
      },
      {
        "matchKind": "Exact",
        "refName": "refs/heads/main",
        "repositoryId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
      }
    ],
    "validDuration": 0
  },
  "type": {
    "displayName": "Build",
    "id": "bbbbbbbb-1111-2222-3333-cccccccccccc"
  }
}

Para saber mais sobre a estrutura para vários tipos de política, consulte Criar política.

Em seguida, salve o arquivo e execute o comando criar política:

az repos policy create --policy-configuration C:\policyConfiguration.txt

Observação

O caminho é fornecido usando a barra invertida '\'.