Conclusões do Git para aliases disponíveis somente depois de executar 'git reflog'

3

Eu tenho alguns aliases que quero preencher automaticamente para o git, por exemplo, os seguintes

alias gco="git checkout"

Quando eu estava tentando adicionar conclusões para esse alias, olhei no caminho e vi que um grupo de conclusões do git estava disponível (por exemplo, _git-push , _git-checkout , _git-diff-files ). E usei compdef para defini-lo:

compdef _git-checkout gco

Isso funcionou por um tempo, então eu reiniciei meu terminal e de repente eles foram embora ... (recebendo um erro sobre conclusões não disponíveis):

gco (eval):1: command not found: _git-checkout
(eval):1: command not found: _git-checkout
(eval):1: command not found: _git-checkout

A parte estranha é que todos eles são despejados no meu caminho depois que eu corro git reflog . (e então eles trabalham). Eu estou confiando em algumas funções internas aqui que eu não deveria estar? Devo ir sobre isso de forma diferente? (Eu também poderia apenas adicionar um git reflog no meu .zshrc , mas isso parece totalmente ridículo de se fazer).

    
por Jeff Tratner 18.08.2013 / 17:13

0 respostas