J'ai utilisé Git à la fois sur Windows et Ubuntu pendant le développement d'un petit projet, en passant fréquemment de l'un à l'autre. Le problème est le suivant Git Bash devient constamment lent.
Quand je dis lent, je veux dire que la course cd
prend entre 8 et 25 secondes, l'exécution git
Les commandes prennent de 5 à 20 secondes, et ls
peut prendre jusqu'à 30 secondes parfois. Inutile de dire que ce n'est pas amusant, pour ne pas dire improductif. Je sais que Git est plus lent sous Windows, mais c'est ridicule.
La seule solution qui a fonctionné - temporairement - pour moi a été de désactiver ma connexion réseau (comme suggéré dans le document cette réponse ), lancez Git Bash, puis reconnectez-vous. Parfois, il continue à fonctionner rapidement pendant des jours après avoir fait cela, mais les performances finissent toujours par se dégrader. J'ai parcouru le groupe de discussion msysgit, Stack Overflow, msysgit issue list, etc. pendant des semaines, mais je n'ai pas été capable de trouver des solutions qui fonctionnent.
Jusqu'à présent, j'ai essayé :
- Ajout des dossiers de Git et de projet à la liste d'exclusion de l'antivirus
- Désactiver complètement mon antivirus (Kaspersky IS 2011)
- S'assurer qu'Outlook n'est pas en cours d'exécution (Outlook 2007)
- Fermeture de toutes les autres applications
- Exécuter Git Bash en tant qu'administrateur
- Désactivation de la connexion réseau, démarrage de Git Bash, et maintien de la connexion désactivée
- Désactiver la connexion réseau, lancer Git Bash, réactiver la connexion (ne fonctionne qu'occasionnellement).
- Running
git gc
- Et des combinaisons de ce qui précède
J'ai lu que certaines personnes avaient réussi à désactiver l'achèvement de Bash, mais j'aimerais idéalement le garder actif. La version de msysgit est 1.7.3.1-preview20101002 et le système d'exploitation est Windows 7 x64. L'exécution des mêmes choses sous Linux est, comme on pouvait s'y attendre, rapide comme l'éclair. J'utiliserais bien exclusivement Linux, mais j'ai aussi besoin de faire tourner des choses sous Windows (certaines applications, des tests, etc.).
Quelqu'un a-t-il rencontré un problème similaire ? Si oui, quel était le problème sous-jacent et quelle a été la solution (le cas échéant) ?
Cela s'étend au-delà des dépôts Git, mais juste pour référence, les dépôts avec lesquels j'ai utilisé Git étaient plutôt petits : ~4-50 fichiers maximum.
1 votes
Je ne veux pas vous décourager mais Cygwin est très lent sur x64, vous feriez mieux d'essayer sur Windows XP 32bit.
2 votes
Duplicata possible de Msysgit bash est horriblement lent sous Windows 7
5 votes
Sur le même système, ce n'était pas lent il y a six mois. Ils ont dû changer quelque chose...
2 votes
Sur pratiquement toutes les machines ici : Kaspersky AV ralentit massivement git y La "désactivation" de Kaspersky ne fonctionne pas, les avp.exe s'exécutent toujours après l'avoir quitté complètement. Une réinstallation complète de kaspersky règle généralement ce dernier problème.
2 votes
Voir la page wiki de msysgit à ce sujet : github.com/msysgit/msysgit/wiki/Diagnosing-why-Git-is-so-slow (en anglais)
0 votes
J'ai trouvé la réponse qui me convient ici : stackoverflow.com/a/9172824/544779 -- C'était le logiciel antivirus !
0 votes
Fonctionne très bien sous Windows 10 également. Bien fait et merci pour cela @shoelzer !
0 votes
Si vous êtes dans un environnement réseau (c'est-à-dire un bureau d'entreprise), et que %HOMEDRIVE% est défini comme un lecteur réseau (défini par Active Directory), vous devriez voir la solution de @mahacoder ci-dessous. Ma propre solution était très similaire à la sienne.