Skip to main content

Conflitos de mesclagem

Identifique e resolva conflitos de mesclagem no Git para garantir uma integração tranquila entre branches e mesclagens bem-sucedidas de pull requests.

Muitas vezes, o Git pode resolver diferenças entre branches e mesclá-los automaticamente. Normalmente, as alterações estão em linhas diferentes ou em arquivos diferentes, portanto, o Git pode mesclá-las sem ajuda. Às vezes, as mudanças conflitantes precisam da sua ajuda. Conflitos de mesclagem geralmente ocorrem quando as pessoas fazem alterações diferentes na mesma linha do mesmo arquivo ou quando uma pessoa edita um arquivo e outra pessoa exclui o mesmo arquivo.

Conflitos de mesclagem bloqueiam a mesclagem porque o Git não pode escolher com segurança qual versão do conteúdo em conflito deve ser mantida. Você deve resolver todos os conflitos de mesclagem antes de mesclar um pull request em GitHub. Se o seu pull request tiver um conflito de mesclagem entre o ramo de comparação e o ramo base, o botão Merge pull request ficará desativado até que os conflitos sejam resolvidos.

Resolução de conflitos de mesclagem

Resolver um conflito de mesclagem significa escolher o conteúdo final que deve aparecer após a mesclagem das ramificações. A ferramenta certa depende do tipo de conflito.

Na linha de comando, o Git informa quando uma mesclagem não pode ser concluída automaticamente. Você não pode efetuar push do resultado mesclado até resolver o conflito e confirmar a resolução.

$ git merge BRANCH-NAME
> Auto-merging styleguide.md
> CONFLICT (content): Merge conflict in styleguide.md
> Automatic merge failed; fix conflicts and then commit the result

Leitura adicional