2.3.3 Branch

🇧🇷 Galho, ramificação

Uma das grandes vantagens de utilizar esse tipo de sistema é a criação das branches, que são - como o próprio nome já explica - "ramificações" do código original. Sempre que você cria um novo repositório, uma Branch Principal é criada, e por padrão, o Git dá à essa branch o nome de main (você ainda pode encontrar algumas com o nome master). A branch main - em seu período inicial - contém todas as informações do repositório atual, com os mesmos arquivos e códigos.

Branch main possui todos os arquivos e dados da pasta inicial (principal).

Mas as branches não param por aí, pois a maior função delas é serem linhas independentes de desenvolvimento em um repositório, assim podem conter versões paralelas do código sem afetar a branch principal (main). Além disso, as branches ajudam a organizar e gerenciar o fluxo de trabalho de uma equipe de desenvolvimento. Aqui estão algumas das funções mais comuns quando o assunto é branch:

  • Desenvolvimento Paralelo: As branches permitem que diferentes desenvolvedores trabalhem em diferentes funcionalidades ou correções simultaneamente, sem interferir no trabalho um do outro. Cada desenvolvedor pode ter sua própria branch para implementar e testar suas alterações.

Branch main continua contendo a mesma "pasta inicial", mas o Desenvolvedor Jonas e a Desenvolvedora Claudia possuem branches diferentes, cada um desenvolvendo sua especialidade.
  • Isolamento de Funcionalidades ou Correções: Cada branch representa uma unidade de trabalho isolada. Isso significa que as mudanças feitas em uma branch não afetam diretamente o código em outras branches até que essas mudanças sejam mescladas de volta à branch principal.

Branch main segue igual, enquanto isso, na branch feature1 acontecem atualizações e a criação de uma nova funcionalidade.
  • Testes e Experimentações: As branches também podem ser usadas para testar novas funcionalidades ou experimentações sem comprometer o código da branch principal. Se uma experimentação não der certo, ela pode ser descartada sem afetar o código principal.

Ainda bem que o Dev Jonas se ligou nas boas práticas e antes de fazer os novos testes fez uma branch chamada tests1.Depois de um tempo, eles não se comportaram da forma esperada, foi mais fácil de deletar a branch sem fazer nenhuma alteração na branch main.
  • Gerenciamento de Versões: As branches também podem ser usadas para gerenciar diferentes versões de um projeto. Por exemplo, uma branch pode ser usada para manter a versão atual do software enquanto outra branch é usada para desenvolver uma versão futura.

Neste exemplo o nosso Repositório conta, além da branch principal (main) - que contém a primeira versão do código (1.0.0), mais duas: uma chamada tests1 e outra que contém a versão 2.0.0. A branch main recebe um merge da tests1, você consegue perceber quais as mudanças?

Atualizado

Isto foi útil?