Git stash pop-necesita combinar, no se puede actualizar el índice


No puedo hacer estallar mi alijo porque fusioné una rama que aparentemente entra en conflicto con mi alijo y ahora mi alijo es aparentemente incapaz de ser hecho estallar.

app.coffee: needs merge
unable to refresh index

¿Alguien sabe cómo resolver esto?

¡ARREGLADO!

Resulta que el problema real era un conflicto de fusión sin resolver de la fusión, NO que el alijo causaría un conflicto de fusión.

Resolución: Confirma el archivo en conflicto.

Author: SQB, 2012-03-16

5 answers

Primero, marque git status.
Como menciona el OP,

El problema real era un conflicto de fusión no resuelto de la fusión, NO que el alijo causara un conflicto de fusión.

Ahí es donde git status mencionaría ese archivo como "both modified"

Resolución: Confirma el archivo en conflicto.


Puedes encontrar una situación similar hace 4 días en el momento de escribir esta respuesta (13 de marzo de 2012) con este post: "'Tirar no es posible porque tiene archivos no fusionados'":

julita@yulys:~/GNOME/baobab/help/C$ git stash pop
help/C/scan-remote.page: needs merge
unable to refresh index

Lo que hiciste fue arreglar el conflicto de fusión (editar el archivo correcto y confirmarlo):
Ver " ¿Cómo soluciono los conflictos de fusión en Git?"

Lo que el autor de la entrada del blog hizo fue:

julita@yulys:~/GNOME/baobab/help/C$ git reset --hard origin/mallard-documentation
HEAD is now at ff2e1e2 Add more steps for optional information for scanning.

Es decir, abortando completamente la fusión actual, permitiendo que se aplique git stash pop.
Ver"Abortar una fusión en Git".

Esas son sus dos opciones.

 47
Author: VonC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-25 12:14:02

Estaba teniendo este problema, luego resolviendo el conflicto y comprometiéndome, y haciendo git stash pop de nuevo estaba restaurando el mismo alijo de nuevo (causando el mismo conflicto :-( ).

Lo que tuve que hacer es git stash drop para deshacerme de él.

 11
Author: knocte,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-04-12 09:56:01

Es mucho más simple que la respuesta aceptada. Necesitas:

  1. Compruebe git status y rutas no fusionadas debajo de él. Solucionar los conflictos. Puede omitir este paso si prefiere hacerlo más tarde.

  2. Agregue todos estos archivos bajo rutas no fusionadas al índice usando git add <filename>.

  3. Ahora haz git stash pop. Si usted consigue cualquier conflicto éstos necesitarán otra vez ser resueltos.

 5
Author: ayushgp,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-22 10:56:00

Si alguien está teniendo este problema fuera de una acción merge/conflict/, entonces podría ser el archivo git lock de tu proyecto el que esté causando el problema.

git reset
     fatal: Unable to create '/PATH_TO_PROJECT/.git/index.lock': File exists.
rm -f /PATH_TO_PROJECT/.git/index.lock
git reset
git stash pop
 3
Author: StevieJayCee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-02-25 09:15:13

He encontrado que la mejor solución es ramificar su alijo y hacer una resolución después.

git stash branch <branch-name>

Si se le cae de borrar su alijo, es posible que pierda sus cambios y tendrá que recurrir al reflog.

 0
Author: Julian Tellez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-11 12:08:30