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

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.


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

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.


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.