Estoy en una especie de frankendebian stretch/sid (no es la mejor idea, lo sé; planeo reinstalarlo pronto).
La finalización de pestañas funciona para nombres de sucursales de git en directorios de repositorios de 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
Pero algunas de las ramas que muestra ya no existen:
:~/project $ git branch
* develop
private-rl_1219_misspelled_locale_zhtw
stable
Esto también sucede con controles remotos eliminados. ramas.
¿Que está pasando aqui? ¿La secuencia de comandos de finalización de git mantiene un caché de ramas antiguas que se pueden vaciar de alguna manera? ¿Cómo puedo evitar que estas ramas se acumulen en mis resultados de finalización de pestañas?
Respuesta aceptada:
Lo descubrí, gracias a la gentil insistencia de @PatrickMevzek:
Las ramas que estaba viendo eran en realidad referencias a ramas remotas que ya se habían eliminado. Para citar la respuesta principal del hilo SO vinculado anteriormente,
$ git remote prune origin
me lo arregló.