149 votes

Git stash pop - a besoin d'être fusionné, impossible d'actualiser l'index

Je ne peux pas faire apparaître ma cachette parce que j'ai fusionné une branche qui est apparemment en conflit avec ma cachette et maintenant ma cachette est apparemment incapable d'être ouverte.

 app.coffee: needs merge
unable to refresh index

Quelqu'un sait comment résoudre ceci?

FIXÉ!

Il s'avère que le problème réel était un conflit de fusion non résolu à partir de la fusion, PAS que la cachette provoquerait un conflit de fusion.

Solution : validez le fichier en conflit.

25voto

Adam Points 459

Voici comment j'ai résolu le problème :

  • git status (voir un mélange de fichiers d'un précédent stash, pull, stash pop et poursuite du travail.)
  • git stash (voir le problème de fusion des besoins)
  • git ajouter. (ajouter les fichiers pour que mon travail résolve localement mon propre fusionné)
  • git stash (pas d'erreur)
  • git pull (pas d'erreur)
  • git stash pop (pas d'erreur et continue à travailler)

15voto

knocte Points 4320

J'avais ce problème, puis résoudre le conflit et commettre, et refaire git stash pop reconstituait à nouveau la même cachette (provoquant le même conflit :-( ).

Ce que j'ai dû faire (ATTENTION : sauvegardez d'abord votre cachette) c'est git stash drop pour m'en débarrasser.

12voto

ayushgp Points 2092

C'est beaucoup plus simple que la réponse acceptée. Tu dois:

  1. Vérifiez git status et les chemins non fusionnés en dessous. Corrigez les conflits. Vous pouvez sauter cette étape si vous préférez le faire plus tard.

  2. Ajoutez tous ces fichiers sous des chemins non fusionnés à indexer en utilisant git add <filename> .

  3. Faites maintenant git stash pop . Si vous rencontrez des conflits, ceux-ci devront à nouveau être résolus.

5voto

StevieJayCee Points 104

Si quelqu'un rencontre ce problème en dehors d'une fusion/conflit/action, il pourrait s'agir du fichier git lock de votre projet à l'origine du problème.

 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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X