Usando o Git versão 2.2.0 com o Unity Game Engine no OS X, e queria confirmar meu código. Adicionei tudo e não recebi uma mensagem de erro. depois confirme -m e receba esta mensagem de erro:
fatal: multiple stage entries for merged file 'Assets/Prefabs/Resources'
Não percebendo, eu enviei, que não deu uma mensagem de erro, na verdade disse: Everything up-to-date
Então eu verifiquei o bitbucket (onde o repositório é realizado) e ele não mostrou meu commit. então verifiquei meu log local e isso também não mostra meu commit.
Eu procurei no google por uma resposta ... e nada. qual é esse erro? e como posso corrigir isso?
Respostas:
A primeira solução, que parece funcionar com versões recentes do Git (2.3 +, Q2 + 2015) é mencionado na concessão de mais up-to-date resposta :
Excluir o índice
Adicionar todos
Confirmar
Resposta original (final de 2014)
A solução usual é:
adicione as alterações do primeiro repositório para o segundo:
Você pode ver esta mensagem de erro em
read-cache.c
, discutida neste patch ("read-cache.c
: Garanta que entradas não mescladas sejam removidas ") e introduzida no commit do Git 2.2 .Uma vez que este é tão recente, é possível que a desclassificação Git para 2,1 seria suficiente para não ser afetado por esse patch.
O OP Daniel Toebe acrescenta nos comentários :
fonte
git commit -c sha
Acredito que encontrei esse problema porque adicionei e confirmei alterações e excluí um arquivo que havia acabado de confirmar. Se isso parecer semelhante ao seu caso, recomendo seguir o abaixo para salvar a re-clonagem e adicionar manualmente suas alterações.
Consegui corrigir esse problema excluindo o arquivo .git / index no meu repositório, semelhante ao que o @slider sugeriu (acredito que ele digitou errado o caminho).
Então eu tive que adicionar e confirmar minhas alterações locais novamente
Eu era capaz de empurrar remotamente.
O que é o índice git e como é relevante?
Qual é o problema do índice Git?
Acredito que, ao excluir este arquivo, o git irá indexar novamente novamente o repo, criar um novo e você estará pronto. Ele resolve esse problema porque o repositório local é re-indexado sem o arquivo que eu excluí que causou todo o barulho.
Edit: Parece que isso está relacionado ao Mac (com base nos comentários), por isso, se ajudar, eu estou no OSX 10.10 e na versão 2.3.4 do git instalada através do brew.
fonte
git add -A
git
. (Na verdade, acho que existem muitos deles.) Fechar o IntelliJ, remover o índice e re-confirmar meu trabalho funcionou perfeitamente.Para o projeto
depois de excluir o índice, você precisa recriá-lo com git reset
Para submódulo:
Vá para a pasta principal do projeto
fonte
Você pode remover o arquivo de índice Git do seu projeto. Na raiz do seu projeto, execute o seguinte comando:
Depois disso, funciona.
fonte
rm: /.git/index: No such file or directory
Mac OSX Yosemite; git 2.3.4 instalado através do homebrewrm .git/index
no seu diretório git).Eu tento uma solução diferente e funciona para mim. Abaixo estão minhas opções
fonte
git reset
caso contrário, ele fornecefatal: Could not reset index file to revision 'HEAD'
.Se isso acontecer em um submódulo
O arquivo de índice está localizado dentro do
.git
diretório pai :Em um submódulo, não há diretórios nomeados
.git
(pelo menos no projeto em que estou trabalhando), há apenas um.git
arquivo que informa (e o git) onde procurar o diretório git desse projeto.O status Git mostra alterações que eu não fiz
Depois de remover os arquivos de índice e fazer um
git reset
, me vi enfrentando muitas alterações inexplicáveis e uma redefinição física não estava ajudando.Como você perderá todas as alterações, confirme-as e pressione antes de continuar.
O índice parecia corrompido, então eu o removi com os seguintes comandos.
fonte
Acabei de receber este erro com o Github Desktop Client (OSX). Tudo o que fiz foi sair do aplicativo e reabri-lo e ele começou a funcionar.
fonte