Como corrigir o erro do Git 'Suas alterações locais nos arquivos a seguir serão substituídas por mesclagem'



Experimente Nosso Instrumento Para Eliminar Problemas

A mensagem de erro “ Suas alterações locais nos seguintes arquivos serão substituídas por mesclagem ”Ocorre no mecanismo de controle de versão do Git. Este erro ocorre se você modificou um arquivo que também possui modificações no repositório remoto.



Erro Git: suas alterações locais nos arquivos a seguir serão substituídas por mesclagem durante a codificação

Erro Git: suas alterações locais nos arquivos a seguir serão substituídas por mesclagem



Essa mensagem de erro é evitada SE não houver arquivos não confirmados que também tenham modificações no repositório remoto. Ao experimentar esta mensagem, é melhor consultar os outros membros da equipe e pedir sua opinião. Se você deseja mesclar suas alterações locais ou manter a versão presente no repositório, é melhor manter todos a bordo.



O que são repositórios? O que são push e pull no Git?

Um repositório é um tipo de armazenamento para código que é constantemente modificado e obtido por membros da equipe por meio do mecanismo de controle de versão do GitHub. UMA ' Puxar' significa que você está puxando a versão mais recente do repositório em seu armazenamento local / IDE (Ambiente de Desenvolvimento Integrado), como Pycharm etc.

Após um pull, você faz alterações no código ou adiciona mais recursos. Assim que terminar, você ‘ Empurrar' o código no repositório para que as alterações sejam salvas e as adições sejam feitas. O código também fica acessível a outras pessoas.

Se você é novo no controle de versão do Github, é recomendável que você passe por todos os fundamentos primeiro. Neste artigo, presumimos que você já tenha conhecimento básico e conheça todos os detalhes.



Como corrigir 'Suas alterações locais nos arquivos a seguir serão substituídas pela mesclagem'?

A resolução dessa mensagem de erro depende do que você deseja fazer. Você pode descartar suas alterações locais e obter as do repositório ou pode salvar suas alterações locais em um estoque e obter a versão do repositório. Tudo depende da sua preferência.

Portanto, recomendamos que você consulte os membros de sua equipe e certifique-se de que todos estejam no mesma página antes de seguir em frente. Se você se comprometer incorretamente ou enviar a versão errada, isso pode afetar toda a equipe.

Método 1: forçar um pull para substituir as alterações locais

Se vocês não se preocupe com as mudanças feitas localmente e deseja obter o código do repositório, você pode forçar um pull. Isso substituirá todas as alterações locais feitas em seu computador e uma cópia duplicada da versão no repositório aparecerá.

Execute os seguintes comandos em seu IDE:

git reset - hard git pull

Isso destruirá instantaneamente todas as suas mudanças locais, então certifique-se de que você sabe o que está fazendo e não precisa de suas mudanças locais.

Método 2: manter as duas alterações (local e do repo)

Se você quiser manter ambas as mudanças (mudanças feitas localmente e mudanças presentes no repositório), você pode adicionar e enviar suas mudanças. Quando você puxa, obviamente haverá um conflito de mesclagem. Aqui você pode usar as ferramentas em seu IDE (como Difftool e mergetool) para comparar as duas partes do código e determinar quais alterações manter e quais remover. Este é o meio-termo; nenhuma alteração será perdida até que você as remova manualmente.

git add $ the_file_under_error git commit git pull

Quando você tiver um conflito de mesclagem, abra essas ferramentas de resolução de conflito e verifique linha por linha.

Método 3: manter as duas alterações, mas não comprometer

Esta situação acontece de tempos em tempos, quando os desenvolvedores não estão prontos para fazer commit porque há algum código parcialmente quebrado que você está depurando. Aqui podemos armazenar as alterações com segurança, obter a versão do repositório e, em seguida, remover o armazenamento do seu código.

git stash save --keep- index

ou

git stash
git pull git stash pop

Se houver alguns conflitos depois de abrir o estoque, você deve resolvê-los da maneira usual. Você também pode usar o comando:

git stash aplicar

em vez de pop se você não estiver pronto para perder o código escondido devido a conflitos.

Se a fusão não parece uma opção viável para você, considere fazer um rebase. Rebasing é o processo de mover ou combinar uma sequência de commits para um novo commit de base. No caso de rebase, altere o código para:

git stash git pull --rebase origin master git stash pop

Método 4: faça alterações em partes 'específicas' do seu código

Se quiser fazer alterações em partes específicas do código e não quiser substituir tudo, você pode comprometer tudo que você não deseja substituir e, em seguida, siga o método 3. Você pode usar o seguinte comando para as alterações que deseja substituir da versão presente no repositório:

git checkout path / to / file / to / revert

ou

git checkout HEAD ^ caminho / para / arquivo / para / reverter

Além disso, você precisa se certificar de que o arquivo não seja testado por meio de:

git reset HEAD caminho / para / arquivo / para / reverter

Em seguida, prossiga com o comando pull:

git pull

Isso tentará obter a versão do repositório.

3 minutos lidos