Il completamento automatico di Git non funziona con l'homebrew


12

Ecco la mia configurazione:

brew install git bash-completion
Warning: git-2.1.3 already installed
Warning: bash-completion-1.3 already installed

In .bash_profile:

if [ -f $(brew --prefix)/etc/bash_completion ]; then
    . $(brew --prefix)/etc/bash_completion
fi

Ma non ho ancora il completamento automatico per i comandi git. (Ho usato macports prima, ma l'ho rimosso completamente perché non riuscivo a ottenere i comandi git per il completamento automatico, indipendentemente da quello che ho provato.)

Sono su OSX 10.10

Risposte:


10

Per Yosemite, dopo aver eseguito l'aggiornamento a git 2.1.3 con homebrew, questo ha funzionato nel mio .profilefile ( .bash_profileo simile avrebbe funzionato anche):

# git tab completion (homebrew)
if [ -f `brew --prefix`/etc/bash_completion.d/git-completion.bash ]; then
    . `brew --prefix`/etc/bash_completion.d/git-completion.bash
fi

Prima git-prompt.shce l' avevo , ma cambiarlo in ha git-completion.bashfunzionato per me. YMMV.


3

Prova a scaricare direttamente nella tua home directory:

curl -O https://raw.github.com/git/git/master/contrib/completion/git-completion.bash
mv git-completion.bash .git-completion.bash

Quindi nel tuo .bash_profileaggiungi quanto segue:

if [ -f ~/.git-completion.bash ]; then
    . ~/.git-completion.bash
fi

1
Fatto questo wget https://raw.github.com/git/git/master/contrib/completion/git-completion.bash && source git-completion.bash, senza fortuna ancora.
qed

@qed, quel + risposta è .bash_profile ha funzionato per me.
Maragues,

Anche . ~/.git-completion.bashdirettamente nella shell non funziona. Nessun messaggio di errore neanche.
aggiornato il

1

Sul mio sistema (10.10.5), ho risolto questo problema creando un link simbolico in /usr/local/etc/bash_completion.d/ a bash_completion.d / git-completamento.bash nella directory GIT. Nel mio caso:

cd /usr/local/etc/bash_completion.d
ln -s ../../Cellar/git/2.7.2/etc/bash_completion.d/git-completion.bash git-completion.bash

assicurati di controllare la versione installata di git e sostituire 2.7.2 con la tua versione.


L'ho già fatto, ma non funziona ancora.
aggiornato il

Insieme alle altre risposte, farlo ha funzionato anche per me. Grazie!
Vandesh,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.