Conclusão de tabulação para ramificações git mostrando entradas antigas / desatualizadas

0

Eu estou em uma espécie de stretch / sid da franquia (não é a melhor idéia, eu sei; estou pensando em reinstalar em breve).

A conclusão de tabulação funciona para nomes de ramificações git nos diretórios do git repo:

:~/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

Mas alguns dos ramos mostrados não existem mais:

:~/project $ git branch
* develop
  private-rl_1219_misspelled_locale_zhtw
  stable

Isso também acontece para as ramificações remotas excluídas.

O que está acontecendo aqui? O script de conclusão do git mantém um cache de ramificações antigas que podem ser liberadas de alguma forma? Como posso impedir que essas ramificações se acumulem nos meus resultados de conclusão de tabulação?

    
por Ryan Lue 03.05.2018 / 05:28

2 respostas

3

Eu percebi isso, graças a alguns estímulos gentis de @PatrickMevzek:

Os ramos que eu estava vendo eram, na verdade, referências a filiais remotas que já haviam sido excluídas . Para citar a resposta principal do encadeamento de SO vinculado acima,

$ git remote prune origin

consertou para mim.

    
por 03.05.2018 / 16:29
-1

git (1) vem com arquivos contribuídos em git/contrib/completion/ na fonte. O script do seu shell lida com as conclusões.

    
por 03.05.2018 / 13:32