Compartilhar via


Sobre branches e políticas de branch

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

As políticas de branch são uma parte importante do fluxo de trabalho do Git e permitem que você:

  • Isolar o trabalho em andamento do trabalho concluído em seu branch principal
  • Garantir o build de alterações antes de chegar à principal
  • Limitar quem pode contribuir com branches específicos
  • Impor quem pode criar branches e as diretrizes de nomenclatura para os branches
  • Incluir automaticamente os revisores corretos para cada alteração de código
  • Impor práticas recomendadas com revisores de código necessários

A tabela a seguir resume as políticas que você pode definir para personalizar um branch. Para obter uma visão geral de todas as políticas e configurações de repositório e branch, consulte as configurações e políticas do repositório Git.

Policy

Default

Descrição


Desativado

Exigir aprovação de um número especificado de revisores em solicitações de pull.

Desativado

Incentive a rastreabilidade verificando os itens de trabalho vinculados nas solicitações de pull.

Desativado

Verifique se todos os comentários foram resolvidos em solicitações de pull.

Desativado

Controle o histórico do branch limitando os tipos disponíveis de mesclagem quando as solicitações de pull são concluídas.

Desativado

Adicione uma ou mais políticas para validar o código, mesclando e criando alterações de solicitação de pull. Também é possível habilitar ou desabilitar políticas.

Desativado

Adicione uma ou mais políticas para exigir que outros serviços postem o status bem-sucedido para concluir solicitações de pull. Também é possível habilitar ou desabilitar políticas.

Desativado

Adicione uma ou mais políticas para designar revisores de código para incluir automaticamente quando solicitações de pull alterarem determinadas áreas de código. Também é possível habilitar ou desabilitar políticas.

Adotar uma estratégia de ramificação do Git

Há alguns branches críticos em seu repositório que a equipe depende de estar sempre em boa forma, como sua main ramificação.

Exigir solicitações de pull para fazer alterações nesses branches. Os desenvolvedores que enviarem alterações diretamente para as ramificações protegidas terão seus pushes rejeitados.

Mantenha sua estratégia de ramificação simples criando sua estratégia com base nesses três conceitos:

  1. Use branches de recursos para todos os novos recursos e correções de bugs.
  2. Mesclar branches de recursos no branch principal usando solicitações de pull.
  3. Mantenha uma ramificação principal de alta qualidade up-todata.

Uma estratégia que estende esses conceitos e evita contradições resulta em um fluxo de trabalho de controle de versão para sua equipe que é consistente e fácil de seguir.

Criar trabalho em branches

As ramificações do Git não são muito mais do que uma pequena referência que mantém um histórico exato de confirmações, portanto, elas são baratas de criar.

A confirmação de alterações em um branch não afetará outras ramificações. Você pode compartilhar branches com outras pessoas sem precisar mesclar as alterações no projeto principal.

Você pode criar novos branches para isolar as alterações de um recurso ou uma correção de bug do branch principal e de outros trabalhos.

Como os branches são leves, alternar entre branches é rápido e fácil. O Git não cria várias cópias de sua origem ao trabalhar com branches, ele usa as informações de histórico armazenadas em confirmações para recriar os arquivos em um branch quando você começa a trabalhar nele.

O fluxo de trabalho do Git deve criar e usar branches para gerenciar recursos e correções de bugs.

O restante do fluxo de trabalho do Git, como compartilhamento de código e revisão de código com solicitações de pull , todos funcionam por meio de branches.

Isolar o trabalho em branches torna simples alterar o que você está trabalhando alterando seu branch atual.

Como os branches do Git são criados?

Você cria branches usando o branch comando. Branch cria uma referência no Git para o novo branch e um ponteiro de volta para a confirmação pai para que o Git possa manter um histórico de alterações à medida que você adiciona confirmações ao branch.

Quando você está trabalhando com um branch que outra pessoa compartilhou, o Git mantém uma relação de acompanhamento upstream. A relação associa o branch no repositório local ao branch correspondente no repositório remoto.

O acompanhamento upstream simplifica a sincronização de alterações com outras pessoas usando push e pull.

Visual de uma ramificação desativada principal no Git

Nesta captura de tela, você pode ver um novo branch que foi criado a partir do branch principal. O trabalho continua em branches e as confirmações são adicionadas a ambas as ramificações.

O Git sempre adiciona novas confirmações ao branch local atual. Verifique em qual branch você está trabalhando antes de confirmar para não confirmar alterações no branch errado.

Alterne entre branches locais usando o checkout comando. O Git alterará os arquivos em seu computador para corresponder à confirmação mais recente no branch de check-out.

Quando seu trabalho no branch estiver pronto para compartilhar com o restante da equipe, você envia por push as alterações para atualizar o branch remoto.

Um erro comum é fazer algumas alterações e commit elas, perceber que você está em um branch incorreto e, em seguida checkout , para o branch correto.

Suas alterações mais recentes não estarão mais no sistema de arquivos, pois cada branch tem sua própria versão do código.

O Git traz o estado dos arquivos de volta para a última confirmação no branch em que você trocou, não no branch anterior em que você fez suas alterações.

Você precisará escolher as confirmações do branch ou mesclar as alterações no branch correto.

Usar branches para gerenciar o desenvolvimento

O Git controla em qual branch você está trabalhando e garante que, quando um checkout branch, seus arquivos corresponderem à confirmação mais recente no branch.

Os branches permitem que você trabalhe com várias versões do código-fonte no mesmo repositório Git local ao mesmo tempo.

Informe ao Git em checkoutqual branch você deseja trabalhar e o Git cuida de definir as versões de arquivo corretas para esse branch.

Você não precisa de mais de um repositório em seu sistema quando usa branches para isolar seu trabalho.

Configure seu ambiente de desenvolvimento uma vez depois de clonar. Em seguida, use branches do Git para alternar entre o trabalho do recurso e a correção de bugs.

Como ramificar guias

Saiba como concluir tarefas comuns ao trabalhar com branches.