Erreur Git SVN: un processus Git s'est écrasé dans le référentiel plus tôt

97

J'essayais juste de valider les modifications dans le maître Git. D'après ce que j'ai lu, il semble que l'idée soit de supprimer le fichier de verrouillage. Le message dit:

assurez-vous qu'aucun autre processus Git n'est en cours d'exécution et supprimez le fichier manuellement

Peut-être que quelqu'un sait quel fichier supprimer et comment supprimer?

Pinchas K
la source
1
Pourriez-vous afficher le message d'erreur complet, y compris la commande que vous exécutez?
Schwern
J'utilise la tortue cependant. pouvez-vous supprimer ce fichier dans la tortue ou seulement dans la coquille?
Pinchas K
Vous devrez probablement le faire dans un shell ou un explorateur de fichiers. Vous devrez peut-être afficher les fichiers cachés.
Schwern
l'erreur complète est la suivante: fatale: impossible de créer le fichier 'C / etc / .git / index.lock' existe. Si aucun autre processus git n'est actuellement en cours d'exécution, cela signifie probablement qu'un processus git s'est écrasé dans le référentiel plus tôt. Assurez-vous qu'aucun autre processus git n'est en cours d'exécution et supprimez le fichier manuellement pour continuer.
Pinchas K
5
Le message d'erreur dit tout. Supprimer C:\etc\.git\index.lockcomme n'importe quel autre fichier.
Schwern

Réponses:

194

Le fichier en question est probable .git/index.lock et il devrait être prudent de simplement le supprimer si aucun autre processus git n'est en cours d'exécution . Assurez-vous qu'une commande git-svn ne se bloque pas.

PS Mon approche habituelle pour résoudre les problèmes de git-svn est de créer une nouvelle extraction du référentiel. Cela prend du temps, mais vous pouvez le faire en parallèle avec la résolution du problème. Faites une petite course entre vous et git. Bien sûr, cela ne fonctionne que si vous n'avez pas de commits non exécutés.

Schwern
la source
1
Cela ne l'a pas résolu pour moi. J'avais un autre fichier de verrouillage restant à .git / svn / refs / remotes / git-svn / index.lock.
Kai Stavginski
74

La suppression du index.lockfichier comme indiqué par Schwern résoudra ce problème.

Vous pouvez le supprimer en exécutant rm -f ./.git/index.lock

La rmcommande est utilisée pour supprimer (supprimer) des fichiers et des répertoires.

Le -fsignifie force qui indique à votre ordinateur de supprimer les fichiers sans demander de confirmation

Joël
la source
9

Pour un utilisateur "GUI" comme moi

Ouvrez l'extension Git et choisissez le référentiel (s'il y en a plus d'un). Choisissez "Paramètres" dans le menu du haut, puis "Git Maintenance", puis cliquez sur "Supprimer le verrouillage d'index"

Extensions Git: Paramètres-> Maintenance Git-> Supprimer le verrouillage d'index

user3981082
la source
2

Vous avez déjà ouvert un commit dans un autre onglet du terminal

Andrew Denysyuk
la source
2

Cela peut également concerner tous les fichiers * .lock dans .git /

Vérifiez et supprimez-les. Vous pouvez utiliser:rm -f ./.git/*.lock

artegen
la source
0

La suppression du fichier index.lock comme indiqué par Schwern résoudra ce problème.

Vous pouvez le supprimer en exécutant rm -f ./.git/index.lock

La commande rm est utilisée pour supprimer (supprimer) des fichiers et des répertoires.

Le -f représente la force qui indique à votre ordinateur de supprimer les fichiers sans demander de confirmation

ne fonctionne toujours pas signifie ouvrir le git via git bash au lieu de le faire dans le terminal

sarangan
la source