Exigir que os branches sejam criados nas pastas
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Quando você tem muitas pessoas colaborando em um repositório, o número e os nomes dos branches podem sair rapidamente do controle.
As pastas de ramificação hierárquicas são uma maneira eficaz de domar o caos.
O Azure DevOps Services, o TFS e o Visual Studio tratam /
como um separador de pastas e recolhem automaticamente as pastas por padrão.
Dessa forma, você não precisa percorrer cada branch para encontrar o que está procurando.
Você não também não precisa depender de todos para acertar.
O Azure Repos e o TFS podem impor o uso correto das pastas dos branches.
Planejamento
Decida qual estrutura de pastas você deseja permitir. Por exemplo, definiremos nosso repositório para impor as seguintes regras:
- Só
main
pode existir na raiz do repositório. - Todos os usuários terão permissão para criar branches nas pastas
feature/
eusers/
. - Administradores poderão criar branches na pasta
release/
.
Observação
Para obter mais exemplos e informações sobre estratégias de nomenclatura de branch, consulte Adotar uma estratégia de ramificação do Git.
Preparação
- Você precisará do comando (
tf.exe
) do Controle de Versão do Team Foundation. - Você precisará da URL da sua conta ou coleção, do nome do projeto e do nome do repositório. Para este exemplo, vamos usar
https://fabrikam-fiber.visualstudio.com
,FabrikamProject
eFabrikamRepo
.
Observação
O comando tf.exe
é instalado por padrão com o Visual Studio.
Você pode acessá-lo por meio do Prompt de Comando do Desenvolvedor.
Para obter opções adicionais, baixe o Team Explorer.
Impor permissões
Execute os comandos a seguir no Prompt de Comando do Desenvolvedor, em Iniciar>Visual Studio>Prompt de Comando do Desenvolvedor. Cada comando é precedido por uma explicação do que ele está fazendo. Se você não tiver um token de acesso pessoal armazenado em cache (por exemplo, entrando no portal Web do Azure DevOps Services), será solicitado que você faça logon.
Primeiro, bloqueie a permissão Criar Branch na raiz do repositório para os colaboradores do projeto.
tf git permission /deny:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo
Em seguida, permita que os colaboradores criem branches em feature
e users
.
tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:feature
tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:users
Permita que administradores criem branches em release
.
tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:release
Por fim, permita que administradores criem um branch chamado main
(caso ele seja excluído acidentalmente).
tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:main
Observação
Para obter mais informações, consulte permissão tf Git. Você também pode acessar a ajuda desses comandos na linha de comando executando tf git /?
e tf git permission /?
.
Renomear branches antigos
Abra seu repositório na Web e selecione a exibição Branches.
Localize seu branch existente. Se você não o vir, talvez seja necessário olhar na guia Tudo .
Escolha seu menu de contexto (o botão
...
) e escolha Novo branch.Digite o novo nome do branch, por exemplo , users/frank/readme-fix. Escolha Criar branch.
Escolha o ícone de lixeira vermelha ao lado do nome do branch antigo para excluí-lo.
Observação
Quaisquer permissões ou políticas de branch personalizadas que você tiver configurado não serão migradas.