Git Autocompletion funktioniert nicht mit Homebrew

12

Hier ist mein Setup:

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

Aber ich habe immer noch keine Autovervollständigung für Git-Befehle. (Ich habe vorher Macports verwendet, es aber vollständig entfernt, da ich keine git-Befehle zum automatischen Vervollständigen erhalten konnte, egal was ich versucht habe.)

Ich bin auf OSX 10.10

qed
quelle

Antworten:

10

Für Yosemite funktionierte nach dem Upgrade auf GIT 2.1.3 mit Homebrew in meiner .profileDatei Folgendes ( .bash_profileoder Ähnliches auch):

# 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

Früher war ich git-prompt.shdort, aber ich habe es geändert, damit es git-completion.bashfür mich funktioniert. ymmv.

boorad
quelle
3

Versuchen Sie den Download direkt in Ihrem Home-Verzeichnis:

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

Fügen Sie dann .bash_profileFolgendes hinzu:

if [ -f ~/.git-completion.bash ]; then
    . ~/.git-completion.bash
fi
jherran
quelle
1
Hab das wget https://raw.github.com/git/git/master/contrib/completion/git-completion.bash && source git-completion.bash, noch kein Glück.
Qed
@qed, das .bash_profile von + answer hat für mich funktioniert.
Maragues
Auch . ~/.git-completion.bashdirekt in der Shell geht das nicht. Auch keine Fehlermeldung.
Qed
1

Auf meinem System (10.10.5) habe ich dies behoben, indem ich in /usr/local/etc/bash_completion.d/ einen Symlink zu bash_completion.d / git-completion.bash im GIT-Verzeichnis erstellt habe. In meinem Fall:

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

Überprüfen Sie unbedingt Ihre installierte Version von git und ersetzen Sie 2.7.2 durch Ihre Version.

Patrick van Efferen
quelle
Ich habe das schon, aber es funktioniert immer noch nicht.
Qed
Zusammen mit den anderen Antworten hat dies auch für mich funktioniert. Vielen Dank!
Vandesh