Resolver um Conflito
Parte da seção Controle de Versão do Journey de Terminal da Coddy — lição 38 de 58.
Abortar às vezes é a decisão correta, mas na maioria das vezes você quer realmente resolver o conflito e finalizar o merge.
Resolver um conflito é um ritual de três etapas:
- Abra o arquivo com conflito. Substitua o bloco de marcadores pela versão que você deseja (ou uma combinação).
- Prepare o arquivo resolvido com
git add. - Finalize a mesclagem com
git commit.
Você pode usar um script para sobrescrever o arquivo com o conteúdo resolvido diretamente, que é exatamente o que você fará nesta lição (nenhum editor é necessário).
Se você esquecer de usar git add no arquivo resolvido, o commit falhará e informará que o arquivo ainda está marcado como não mesclado.
Desafio
MédioConfigure um conflito em notes.txt exatamente como na lição anterior:
- Commit inicial na
maincom o conteúdohello - No branch
alt: altere parahi from alt, faça o commit - De volta à
main: altere parahi from main, faça o commit - Execute
git merge alt(isso causará um conflito)
Resolva o conflito sobrescrevendo notes.txt com a linha hi from both. Adicione o arquivo ao stage e finalize o merge com a mensagem Resolve notes. Imprima o conteúdo final de notes.txt.
Folha de consulta
Para resolver um conflito de merge:
- Edite o arquivo em conflito — remova os marcadores de conflito e mantenha o conteúdo desejado.
- Adicione o arquivo resolvido à área de stage:
git add <file> - Finalize o merge:
git commit
git add notes.txt
git commit -m "Resolve conflict"Se você pular o git add, o commit falhará com o arquivo ainda marcado como não mesclado.
Experimente 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 limpo8Merge
O que é um MergeMerge Fast-ForwardMerge Three-WayConflitos de MergeResolver um ConflitoRecapitulação - Mestre do Merge3Rastreando 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