O autocompletar bash do Git não funciona para todos - params

2

Eu tentei separar o autocomplete git reflog --<tab> e não consegui obter uma lista de parâmetros.

No entanto, o mesmo funciona para git stash --<tab> .

git stash --
--all                 --keep-index          --patch 
--include-untracked   --no-keep-index       --quiet 

Por que não posso preencher automaticamente o comando reflog ? Este é o único que percebi que o preenchimento automático de guias não funciona, mas pode haver outras.

    
por ubuntico 16.08.2016 / 17:06

2 respostas

3

Você está esperando a conclusão automática em um lugar errado. Esta é a referência de man git-reflog :

SYNOPSIS
       git reflog <subcommand> <options>

DESCRIPTION
       The command takes various subcommands, and different options depending on the subcommand:

           git reflog [show] [log-options] [<ref>]
           git reflog expire [--expire=<time>] [--expire-unreachable=<time>]
                   [--rewrite] [--updateref] [--stale-fix]
                   [--dry-run] [--verbose] [--all | <refs>...]
           git reflog delete [--rewrite] [--updateref]
                   [--dry-run] [--verbose] ref@{specifier}...
           git reflog exists <ref>

Como está claro, você precisa mencionar um subcomando (mostrar, expirar ou excluir) logo após o reflog e usar as opções.

    
por Mostafa Ahangarha 29.03.2017 / 18:50
1

As conclusões parecem vir do arquivo /usr/share/bash-completion/completions/git e, se você pesquisar por git_stash , verá que as opções estão definidas, mas se pesquisar por git_reflog , a ajuda de conclusão fornecida será muito mais fina.

Então, acho que a resposta é que a ajuda foi considerada menos importante, e o esforço não foi feito para fornecê-la.

Além disso, existe a possibilidade de as conclusões não estarem 100% em sincronia com o programa.

    
por Mike Hanafey 26.02.2017 / 02:17