Accueil·Messages d’erreur

git · Git

Le message

fatal: Unable to create '/repo/.git/index.lock': File exists.

Ce que cela veut dire

git crée .git/index.lock comme verrou pendant qu'il écrit l'index : si le fichier est déjà là, un autre git tourne ou l'un d'eux est mort en le laissant. Il subsiste à cause d'un éditeur ou d'un IDE qui lance git en arrière-plan, ou d'une commande interrompue par Ctrl+C ou tuée. Vérifiez qu'aucun git ne tourne, puis supprimez-le avec rm -f .git/index.lock. Le supprimer alors qu'un processus git travaille vraiment peut corrompre l'index, donc vérifiez d'abord ; si l'index finit faussé, git reset le reconstruit depuis HEAD, et sans --hard il laisse vos fichiers intacts.

Le correctif

rm -f .git/index.lock
Émis par
git
Git
29

Presque toutes les erreurs de git sont un refus qui signifie « faire cela depuis cet état ferait perdre quelque chose » ; fatal: veut dire que git s'est arrêté sans rien modifier, et les lignes hint: sous la première portent souvent le vrai remède.

Lire un message d’erreur

  • Lisez à partir de la première ligne. Plus on descend, plus il s’agit des entrailles de l’outil ; la cause est généralement en haut.
  • S’il y a un fichier et un numéro de ligne, commencez là — pas la première image de la pile, mais la ligne la plus haute qui nomme un fichier de vous.
  • Cherchez le message tel quel, mais retirez d’abord vos chemins et vos noms de variables : c’est cela qui empêche la correspondance.
  • La même situation se formule autrement selon la version de l’outil. Si les résultats sonnent faux, ajoutez le numéro de version.
  • Avant de coller un correctif, vérifiez ce qu’il jette. Certains sont irréversibles.

Questions fréquentes

Q. Que veut dire « fatal: Unable to create '/repo/.git/index.lock': File exists. » ?

git crée .git/index.lock comme verrou pendant qu'il écrit l'index : si le fichier est déjà là, un autre git tourne ou l'un d'eux est mort en le laissant. Il subsiste à cause d'un éditeur ou d'un IDE qui lance git en arrière-plan, ou d'une commande interrompue par Ctrl+C ou tuée. Vérifiez qu'aucun git ne tourne, puis supprimez-le avec rm -f .git/index.lock. Le supprimer alors qu'un processus git travaille vraiment peut corrompre l'index, donc vérifiez d'abord ; si l'index finit faussé, git reset le reconstruit depuis HEAD, et sans --hard il laisse vos fichiers intacts.

Q. Comment le corriger ?

rm -f .git/index.lock — avant de le lancer, vérifiez plus haut ce que cette commande jette.

Q. Quel outil émet cela ?

git. Cela relève de Git, et le message compte 7 mots.

Erreurs voisines