Parar conclusão da aba bash de pensar que eu quero cd em diretórios .svn

4

Eu tenho uma estrutura de pastas que está na subversão.

Há uma pilha inteira de diretórios de nível superior que possuem apenas 1 subpasta. (por exemplo, src/com/example ). Normalmente, quando eu quero fazer o cd na pasta de exemplo, posso ir em cd src/<tab><tab> , já que o bash preencherá os nomes das pastas, já que há apenas um por pasta que vai até o fim.

No entanto, como essa estrutura de diretórios está agora em svn, há um diretório .svn em cada um deles, e isso significa que não consigo fazer o cd rapidamente.

Se eu tentar cd src/<tab> , sugiro .svn e com , em vez de preencher automaticamente com .

Existe alguma maneira de dizer ao bash para nunca sugerir o cd'ing em uma pasta .svn, para que, se eu concluir a tabulação, ele não inclua .svn ?

    
por Rory 08.10.2009 / 11:22

1 resposta

8

Eu posso te dar duas opções. Qualquer um dos quais pode ser colocado em seu ~/.bash_profile .

  • O Bash usa uma variável $FIGNORE , que define quaisquer sufixos que o preenchimento automático ignorará. Parece haver um problema, na medida em que prefixam qualquer valor com *. . Então, uma configuração de:

    export FIGNORE=.svn
    

    Ignorará apenas os diretórios que tiverem algo antes do período. E:

    export FIGNORE=svn
    

    Ignora os diretórios .svn e qualquer outra coisa que termine em .svn .

    Emptor de advertência.

  • Você pode impedir que todos os arquivos e diretórios ocultos sejam incluídos no preenchimento automático:

    bind 'set match-hidden-files off'
    

    Mas você pode não achar isso adequado.

por 08.10.2009 / 11:56