Je suis sur une sorte de frankendebian stretch/sid (ce n'est pas la meilleure idée, je sais ; je prévois de réinstaller bientôt).
La complétion de tabulation fonctionne pour les noms de branche git dans les répertoires de dépôt git :
:~/project $ git checkout <TAB><TAB>
Display all 200 possibilities? (y or n)
:~/project $ git checkout private-rl_<TAB><TAB>
private-rl_1219_misspelled_locale_zhtw private-rl_1950_scheduler_offset private-rl_bootstrap_rake_tasks
private-rl_1854_ldap_filter_reset private-rl_bootstrap_rake_task
Mais certaines des branches qu'il affiche n'existent plus :
:~/project $ git branch
* develop
private-rl_1219_misspelled_locale_zhtw
stable
Cela se produit également pour les distants supprimés succursales.
Que se passe t-il ici? Le script de complétion git conserve-t-il un cache des anciennes branches qui peuvent être vidées d'une manière ou d'une autre ? Comment puis-je empêcher ces branches de s'accumuler dans mes résultats de complétion d'onglet ?
Réponse acceptée :
J'ai compris, grâce à une douce incitation de @PatrickMevzek :
Les branches que je voyais étaient en fait des références à des branches distantes qui avaient déjà été supprimées. Pour citer la meilleure réponse du fil SO lié ci-dessus,
$ git remote prune origin
l'a réparé pour moi.