124 votes

L'état Git prend beaucoup de temps à se terminer

J'utilise git pour gérer des fichiers dans un répertoire local sur une machine Windows - aucun réseau n'est impliqué ici, je ne pousse pas ou ne tire pas vers/depuis une autre machine. Mon répertoire contient environ 100 fichiers, tous des fichiers de test, assez petits. Lorsque je lance git status Il faut régulièrement 20 à 30 secondes pour que l'opération s'achève. Est-ce normal ? Y a-t-il quelque chose que je puisse faire pour l'accélérer, ou un meilleur moyen de voir l'état de mon dépôt (fichiers modifiés, fichiers non suivis, etc.) ? Autre git semblent se terminer beaucoup plus rapidement.

177voto

Scott Points 2453

Avez-vous essayé git gc ? Cela permet de nettoyer le repo git de tout ce qu'il contient.

24voto

Bill Points 6709

La course à pied git fsck a résolu ce problème dans le passé.

https://git-scm.com/docs/git-fsck

11voto

1800 INFORMATION Points 55907

Utilisez-vous un logiciel de protection contre les virus ? Il se peut qu'il interfère avec les choses. git est très rapide pour moi sur Windows avec des référentiels de plusieurs milliers de fichiers.

8voto

thedz Points 3494

Avez-vous essayé de remballer ? git-repack .

Sinon, essayez de dupliquer le répertoire, et supprimez le dossier .git dans le répertoire dupliqué. Créez ensuite un nouveau répertoire git et voyez si le système est toujours lent.

S'il est toujours lent, il semble qu'il s'agisse d'un problème de système ou de matériel. Git termine l'état de centaines de fichiers en moins de 5 secondes.

7voto

user79252 Points 11

Dans le même ordre d'idée, j'ai constaté que le fait d'avoir un repo git dans un répertoire situé en dessous de mon repo git existant provoquait un ralentissement massif.

J'ai déplacé le repo git secondaire ailleurs et maintenant la vitesse est rapide !

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