Menu
Coddy logo textTech

Conflitos de Merge

Parte da seção Controle de Versão do Journey de Terminal da Coddy. Lição 37 de 58.

Se ambos os branches alteraram as mesmas linhas do mesmo arquivo, o Git não consegue adivinhar qual versão manter. Ele pausa o merge e solicita que você decida.

O arquivo em conflito recebe marcadores especiais mostrando ambas as versões:

<<<<<<< HEAD
the version on main
=======
the version on feature
>>>>>>> feature

Seu trabalho é editar o arquivo manualmente: escolha uma versão, combine-as ou escreva algo novo. Em seguida, remova todos os marcadores de conflito (as linhas <<<, ===, >>>).

Assim que o arquivo parecer correto, prepare-o (stage) e finalize a mesclagem com outro commit:

git add notes.txt
git commit -m "Resolve merge conflict in notes"

Se você mudar de ideia no meio do caminho, você pode abortar tudo e voltar ao estado anterior ao merge:

git merge --abort
challenge icon

Desafio

Médio

A pasta contém notes.txt com a linha hello.

Inicialize o repositório e faça o commit do arquivo inicial. Crie um branch chamado alt, altere notes.txt para dizer hi from alt e faça o commit.

Volte para o main, altere notes.txt para dizer hi from main e faça o commit.

Tente fazer o merge de alt no main. O merge terá um conflito. Aborte-o com git merge --abort, então imprima o conteúdo de notes.txt com cat para confirmar que o arquivo voltou para a versão do main.

Experimente você mesmo

Terminal
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Controle de Versão

Pratique por conta própria: Playground de Terminal