Lorsque je fais un git pull
, à partir du git bash, le terminal exécute généralement le pull, met à jour mon local, puis se bloque. Je ne suis pas sûr si ça m'attend à faire quelque chose, mais je sors habituellement de ça avec CTRL-C
. Après cela, j'obtiens qu'un index.lock m'empêche de faire d'autres choses auxquelles je dois le supprimer. Suis-je mal comprendre comment fonctionne git pull
?Pourquoi git pull accrocher?
Répondre
Je suis sous Windows, et j'ai résolu le problème en fermant le Visual Studio avant de tirer.
(Sur Mac OS X) J'ai eu Visual Studio Code ouvert et il s'est accroché sur 'git pull'. Ferme-le. Est-ce que 'git pull' a encore été lancé et VS Code a lancé et ouvert un message de commit pour le' merge' qui était nécessaire à cause du 'git pull'. Entré un message, enregistré, fermé la fenêtre et tout allait bien. – Jheasly
Si vous tirez d'une machine Linux, vous pouvez consulter ce fichier:
/etc/ssh/ssh_config
Pour vous assurer que vous ne définissez pas votre port SSH par défaut autre chose que 22. Certaines personnes confus entre ce fichier et:
/etc/ssh/sshd_config
Quand ils la configuration des serveurs à un port SSH non standard.
Dans le terminal, exécutez comme une instruction 'GIT_TRACE = true git pull', puis voyez si vous pouvez voir ce qu'il fait quand il se bloque. –
Êtes-vous sur Windows? Si c'est le cas, et s'il est suspendu pendant l'étape 'git merge', avez-vous un processus en cours d'exécution qui détient un verrou sur un fichier? Windows a un "verrouillage obligatoire" dans lequel si le processus * A * a un fichier verrouillé, et le processus * B * (Git) essaye * d'utiliser * ce fichier, le processus * B * est suspendu jusqu'à ce que * A * libère le verrou. Si vous terminez * B * (c.-à-d.^C de Git), idéalement, il devrait nettoyer son fichier 'index.lock' (qui n'utilise pas le verrouillage obligatoire de Windows, c'est juste un fichier ordinaire que Git utilise pour se coordonner), mais apparemment pas. – torek