Usando Git versión 2.2.0 con la unidad del motor de juego en OS X, y quería confirmar mi código. Agregué todo y no recibí un mensaje de error. luego confirma -m, y recibí este mensaje de error:
fatal: multiple stage entries for merged file 'Assets/Prefabs/Resources'
No me di cuenta de que presioné, eso no dio un mensaje de error, de hecho dijo Everything up-to-date
Así que verifiqué bitbucket (donde se lleva a cabo el repositorio) y no mostró mi confirmación. así que revisé mi registro local y eso tampoco muestra mi confirmación.
He buscado en Google una respuesta ... y nada. ¿Qué es este error? y como puedo arreglarlo?
Respuestas:
La primera solución, que parece funcionar con versiones recientes de Git (2.3 +, + Q2 2015) se menciona en subvención 's más hasta a la fecha de respuesta :
Eliminar el índice
Añadir todo
Cometer
Respuesta original (finales de 2014)
La solución habitual es:
agregue los cambios del primer repositorio al segundo:
Puede ver este mensaje de error en
read-cache.c
, discutido en este parche ("read-cache.c
: Asegúrese de que se eliminen las entradas no fusionadas "), e introducido en la confirmación de Git 2.2 .Como esto es tan reciente, es posible que degradar Git a 2.1 sea suficiente para no verse afectado por ese parche.
El OP Daniel Toebe agrega en los comentarios :
fuente
git commit -c sha
Creo que encontré este problema porque agregué y cometí cambios y luego eliminé un archivo que acababa de confirmar. Si esto suena similar a su caso, le recomiendo seguir lo siguiente para guardar la re-clonación y agregar manualmente sus cambios.
Pude solucionar este problema eliminando el archivo .git / index en mi repositorio, similar a lo que sugirió @slider (creo que escribió mal la ruta).
Luego tuve que agregar y confirmar mis cambios locales nuevamente
Entonces pude empujar a distancia.
¿Qué es el índice git y cómo es relevante?
¿Cuál es el trato con el índice Git?
Creo que al eliminar este archivo, git volverá a indexar el repositorio, creará uno nuevo y listo. Resuelve este problema porque el repositorio local se vuelve a indexar sin el archivo que eliminé que causó todo el alboroto.
Editar: Parece que esto está relacionado con Mac (según los comentarios), así que si ayuda, estoy en OSX 10.10 y git versión 2.3.4 instalado a través de brew.
fuente
git add -A
git
. (En realidad, creo que hay muchos de ellos). Cerrar IntelliJ, eliminar el índice y volver a comprometer mi trabajo funcionó bien.Para proyecto
después de eliminar el índice, debe volver a crearlo mediante git reset
Para submódulo:
Ir a la carpeta principal del proyecto
fuente
Puede eliminar el archivo de índice Git de su proyecto. En la raíz de su proyecto, ejecute el siguiente comando:
Después de eso, funciona.
fuente
rm: /.git/index: No such file or directory
Mac OSX Yosemite; git 2.3.4 instalado a través de homebrewrm .git/index
en su directorio git).Intento una solución diferente y funciona para mí. Abajo están mis opciones
fuente
git reset
contrariofatal: Could not reset index file to revision 'HEAD'
.Si esto sucede en un submódulo
El archivo de índice se encuentra dentro del
.git
directorio principal :En un submódulo, no hay directorios nombrados
.git
(al menos en el proyecto en el que estoy trabajando), solo hay un.git
archivo que le dice (y git) dónde buscar el directorio git de ese proyecto.El estado de Git muestra cambios que no hice
Después de eliminar los archivos de índice y hacer un
git reset
, me encontré con muchos cambios inexplicables y un restablecimiento completo no estaba ayudando.Advertencia , perderá todos sus cambios, así que confírmalos y presione antes de continuar.
El índice parecía dañado, así que lo eliminé con los siguientes comandos.
fuente
Acabo de recibir este error con el Github Desktop Client (OSX). Todo lo que hice fue salir de la aplicación y volver a abrirla y luego comenzó a funcionar.
fuente