Como corrigir o erro do Git: você precisa resolver seu índice atual primeiro



Experimente Nosso Instrumento Para Eliminar Problemas

O erro ' Você precisa resolver seu índice atual primeiro ”Ocorre no Git e significa que há um conflito de mesclagem e, a menos que você resolva o conflito, não terá permissão para fazer checkout em outro branch. Essa mensagem de erro também significa que a mesclagem falhou ou que há conflitos com os arquivos.



Erro: você precisa resolver seu índice atual primeiro no controle de origem Git

Erro: você precisa resolver seu índice atual primeiro



O que são todos esses arquivos, mesclagens e conflitos? Esses termos serão desconhecidos para você se você for um iniciante no uso do Git. Git é uma plataforma de controle de versão que permite que várias pessoas trabalhem em arquivos simultaneamente e enviem sua cópia local do código para aquela armazenada na nuvem. Dessa forma, se você alterar algum código baixado (ou já enviado) e enviá-lo novamente para a nuvem, as alterações serão substituídas na nuvem pela sua cópia local.



Git tem um conceito de branches. Existe um branch master e vários outros branches fora dele. Este erro ocorre principalmente se você estiver mudando de um branch para outro (usando checkout) e houver conflitos nos arquivos do branch atual. Se eles não forem resolvidos, você não poderá trocar de branches.

O que causa o erro Git: você precisa resolver seu índice atual primeiro?

Como mencionado antes, as causas desse erro são bastante limitadas. Você experimentará este erro porque:

  • PARA fusão falhou e você precisa resolver o conflito de mesclagem antes de prosseguir com outras tarefas.
  • tem conflitos nos arquivos de seu branch atual (ou branch de destino) e por causa desses conflitos, você não poderá fazer check-out de um branch ou código push.

Antes de prosseguir com a solução, certifique-se de ter controle de versão adequado e é aconselhável impedir que outros membros da equipe alterem o código antes de resolver o conflito.



Solução 1: Resolvendo o conflito de mesclagem

Se a sua fusão não for resolvida automaticamente pelo Git, ele deixa o índice e a árvore de trabalho em um estado especial que ajuda a fornecer todas as informações de que você precisa para resolver a fusão. Os arquivos que apresentam conflitos serão marcados especialmente no índice e até que você resolva o problema e atualize o índice, você continuará recebendo esta mensagem de erro.

  1. Resolva todos os conflitos . Verifique os arquivos que apresentam conflitos, pois eles serão marcados pelo índice e faça as alterações necessárias.
  2. Depois de resolver todos os conflitos existentes, adicionar o arquivo e então comprometer .

Um exemplo é:

$ git add file.txt $ git commit

Você pode adicionar seu comentário pessoal enquanto se compromete. Um exemplo é:

$ git commit –m “Este é o repositório Appuals Git”
  1. Depois de resolver o conflito, tente fazer check-out de seu branch existente e veja se o problema foi corrigido.

Solução 2: Reverter sua fusão

Existem inúmeros casos em que você mesclou branches e causou confusão. Por causa de todos os conflitos e confusão, o projeto agora está uma bagunça e os membros da sua equipe estão culpando você por isso. Neste caso, você tem que reverter o commit anterior (o commit de mesclagem) . Isso irá desfazer a mesclagem totalmente e trazer de volta todo o projeto a um estado em que você não fez nenhuma mesclagem. Isso pode ser um salva-vidas se você bagunçou as coisas além do reparo.

Para reverter a fusão , digite o seguinte:

$ git reset --- mesclar

O comando acima irá redefinir o índice e atualizar os arquivos na árvore de trabalho que são diferentes entre o ‘commit’ e ‘head’. No entanto, ele manterá os arquivos que são diferentes entre o índice e a árvore de trabalho.

Você também pode tentar revertendo o HEAD usando o seguinte comando:

$ git revert HEAD

Se você deseja especificar a confirmação de mesclagem exata que deseja reverter, pode usar o mesmo comando de reversão, mas especificar parâmetros adicionais. O hash SHA1 do commit de mesclagem será usado. O -m seguido por 1 indica que queremos manter o lado pai da fusão (o branch no qual estamos nos fundindo). O resultado dessa reversão é que o Git criará um novo commit que reverte as mudanças da fusão.

$ git revert -m 1 dd8d6f587fa24327d5f5afd6fa8c3e604189c8d4>
3 minutos lidos