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.