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
>>>>>>> featureSeu 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 --abortDesafio
MédioA 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.
Folha de consulta
Quando ambos os branches editam as mesmas linhas, o Git pausa o merge e adiciona marcadores de conflito ao arquivo:
<<<<<<< HEAD
the version on main
=======
the version on feature
>>>>>>> featureEdite o arquivo para o resultado desejado, remova todos os marcadores, então faça o stage e o commit:
git add notes.txt
git commit -m "Resolve merge conflict in notes"Para cancelar o merge e restaurar o estado anterior ao merge:
git merge --abortExperimente você mesmo
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
4Inspecionando Alterações
Git DiffDiff das Alterações no StageGit ShowRecapitulação - Trabalho de Detetive2Primeiros Passos
Inicializar um RepositórioA Pasta .gitConfigurar sua IdentidadeGit StatusRecapitulação - Primeiro Repositório5Ignorando Arquivos
Por que ignorar arquivosPadrões do .gitignoreVerificar regras de ignoreRecapitulação - Repositório limpo3Rastreando Alterações
A Área de PreparaçãoGit AddGit CommitModificando um Arquivo RastreadoGit LogRecapitulação - Primeiros Commits6Projeto Site de Receitas
Visão Geral do ProjetoInicializar e Ignorar