Article image
LEANDRO MOCELIN
LEANDRO MOCELIN07/03/2024 12:50
Compartilhe

Conflitos de Merge no Git? Este Tutorial te Salva!

  • #Git

O Git é um sistema de controle de versão distribuído que permite gerenciar projetos de forma eficiente. Uma das funcionalidades mais importantes do Git é o git merge, que combina diferentes históricos de desenvolvimento em um único branch.

Introdução ao Git Merge

O git merge é usado para integrar as alterações feitas em diferentes branches em um único branch. Isso é útil quando você está trabalhando em uma tarefa específica em um branch e precisa integrar suas alterações no branch principal do projeto.

O git merge funciona combinando os commits de dois branches em um único histórico linear. O Git tenta fazer isso automaticamente, mas pode haver conflitos se as mesmas linhas de código forem modificadas em ambos os branches.

Funcionamento do git merge

O git merge funciona de duas maneiras principais:

1. Merge de Avanço Rápido (Fast-Forward Merge)

Se o branch que você está mesclando for um descendente direto do branch que você está mesclando, o Git fará um merge de avanço rápido. Isso significa que o Git simplesmente move o ponteiro do branch para o commit mais recente do outro branch.

2. Merge de Três Vias (Three-Way Merge)

Se o branch que você está mesclando não for um descendente direto do branch que você está mesclando, o Git fará um merge de três vias. Isso significa que o Git encontrará o ancestral comum dos dois branches e então combinará os commits de ambos os branches desde o ancestral comum.

Exemplos práticos do git merge

Exemplo 1: Merge de Avanço Rápido

Considere o seguinte cenário:

  • Você tem um branch chamado feature que foi criado a partir do branch master.
  • Você faz algumas alterações no branch feature.
  • Você deseja integrar suas alterações no branch master.

Para fazer isso, você pode usar o seguinte comando:

git checkout master
git merge feature

Como o branch feature é um descendente direto do branch master, o Git fará um merge de avanço rápido.

Exemplo 2: Merge de Três Vias

Considere o seguinte cenário:

  • Você tem um branch chamado feature que foi criado a partir do branch master.
  • Você faz algumas alterações no branch feature.
  • No branch master, outras pessoas fizeram alterações que não estão presentes no branch feature.
  • Você deseja integrar suas alterações no branch master.

Para fazer isso, você pode usar o seguinte comando:

git checkout master
git merge feature

Como o branch feature não é um descendente direto do branch master, o Git fará um merge de três vias. O Git encontrará o ancestral comum dos dois branches e então combinará os commits de ambos os branches desde o ancestral comum.

Conclusões

O git merge é uma ferramenta poderosa que permite integrar diferentes históricos de desenvolvimento em um único branch. É importante entender como o git merge funciona para evitar conflitos e garantir que seus projetos sejam gerenciados de forma eficiente.

Documentações

Git Merge Documentation: https://git-scm.com/docs/git-merge

Atlassian Git Tutorial: Git Merge: https://www.atlassian.com/git/tutorials/using-branches/git-merge

O básico de Ramificação (Branch) e Mesclagem (Merge) - Git SCM: https://git-scm.com/book/pt-br/v2/Branches-no-Git-O-b%C3%A1sico-de-Ramifica%C3%A7%C3%A3o-Branch-e-Mesclagem-Merge

Compartilhe
Comentários (3)
Vitoria Freitas
Vitoria Freitas - 08/03/2024 18:14

Ótimo material! 👏👏👏👏

ES

Edilane Silva - 09/03/2024 21:36

Muito bom mesmo seu artigo, parabéns!

Henda Jorge
Henda Jorge - 10/03/2024 12:29

Bem interessante 👏