88 votes

Supprimer les anciennes branches distantes de Git

Lorsque j'utilise l'autocomplétion bash dans Git, il continue à me montrer des branches d'anciennes remotes que je n'ai plus. Lorsque je fais un git branch -la il montre ces vieilles télécommandes et branches tandis qu'un git branch -l ne le fera pas. A ls .git/refs/remotes/ les montre aussi. Cependant, ils ne sont pas présents dans mon .git/config et ils ne sont pas non plus affichés lorsque je lance git remote show .

Alors comment puis-je m'en débarrasser parce que ma liste de complétion automatique est trop longue en ce moment.

J'ai déjà essayé :

git reflog expire --expire=now --all
git gc --prune=now
rm .git/refs/remotes/theoldremote
git remote prune theoldremote

Je suis également conscient du fait que je peux simplement re-cloner le dépôt mais c'est de la triche ;-)

0voto

htaccess Points 191

J'étais confus lorsque des branches distantes qui avaient été supprimées du côté serveur apparaissaient encore lors de l'exécution :

$ git branch --all

La commande suivante a corrigé ce problème pour moi (sur git version 2.25.0) :

$ git remote update --prune

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