Ich habe die hier gefundenen Beispiele ausprobiert , um die automatische Git-Vervollständigung auf El Capitan zum Laufen zu bringen, aber keines der Beispiele funktioniert für mich.
Ich habe bash-completion
mit Homebrew ( brew install bash-completion
) installiert.
Dies ist meine ~/.bash_profile
aktuelle (wie Sie sehen können, habe ich ein paar Dinge ausprobiert):
CRMPiccosMacBook:etc crmpicco$ cat ~/.bash_profile
alias ll='ls -lG'
alias composer="php /usr/local/bin/composer.phar"
#if [ -f $(brew --prefix)/etc/bash_completion ]; then
# . $(brew --prefix)/etc/bash_completion
#fi
if [ -f `brew --prefix`/etc/bash_completion.d/git-completion.bash ]; then
. `brew --prefix`/etc/bash_completion.d/git-completion.bash
fi
#source /usr/local/git/contrib/completion/git-completion.bash
#GIT_PS1_SHOWDIRTYSTATE=true
#export PS1='[\u@mbp \w$(__git_ps1)]\$ '
Wenn ich also mit dem geklonten Git-Repo in mein Verzeichnis gehe und tippe und git checkout m
[TAB] drücke, bekomme ich nichts (wenn ich erwarte master
, dass es vorab ausgefüllt wird).
Wenn ich ein source
darauf starte, existiert es nicht - es ist jedoch installiert.
CRMPiccos-MacBook:signup crmpicco$ brew install bash-completion
Warning: bash-completion-1.3_1 already installed
CRMPiccos-MacBook:signup crmpicco$ source /etc/bash_completion.d/git-completion.bash
-bash: /etc/bash_completion.d/git-completion.bash: No such file or directory
Sie verwechseln die grundlegende Bash-Vervollständigung mit dem Add-On, das zum Vervollständigen von Git-Befehlen erforderlich ist.
Dem git
, das von Apple installiert wird, fehlt die erforderliche git-completion.bash
Datei, sodass Sie das vollständige Git installieren müssen. Sie können dies einfach mit Homebrew tun - brew install git
wird die Arbeit erledigen.
Sobald Sie das getan haben, kommentieren Sie Ihre drei obersten Zeilen aus: -
if [ -f $(brew --prefix)/etc/bash_completion ]; then
. $(brew --prefix)/etc/bash_completion
fi
Jetzt source ~/.bash_profile
und es sollte gut funktionieren.
bash-completion
mit Homebrew (2) Installieren Sie git
mit Homebrew. (3) fügen Sie die obigen Zeilen zu Ihrer hinzu .bash_profile
. Öffnen Sie nun ein neues Terminalfenster und Sie sollten feststellen, dass die Git-Vervollständigung funktioniert.brew install git
hat mein Problem gelöst. Danke @TonyWilliamsgit version 2.15.0
der Pfad des Bash-Vervollständigungsskripts etwas anders ist`brew --prefix`/git/contrib/completion/git-completion.bash
2.18.0
, war die Datei in$(brew --prefix)/etc/bash_completion.d/git-completion.bash
git bash-completion
und dann if [ -f $(brew --prefix)/etc/bash_completion ]; then . $(brew --prefix)/etc/bash_completion fi
zu bash_profile hinzufügen.Als Hinweis für Benutzer wie mich, die bereits auf macOS Catalina aktualisiert haben, das veraltet bash
ist, aber bei dieser Antwort als Top-Ergebnis gelandet ist ...
Für macOS Catalina+, das verwendet zsh
, gibt es einige andere Anforderungen. Laden Sie beide Skripte herunter:
curl -o git-completion.bash https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash
curl -o _git https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.zsh
Aktualisieren Sie dann Ihre ~/.zshrc
mit:
zstyle ':completion:*:*:git:*' script ~/.zsh/git-completion.bash
fpath=(~/.zsh $fpath)
autoload -Uz compinit && compinit
zsh
.bash
. Daher zsh
verfehlt eine Antwort den Punkt der Frage.not found: __git_aliased_command
Sie versuchen, den Namen des Zweigs automatisch zu vervollständigen: / Grundlegende Befehle werden automatisch vervollständigt, z. B. für checkout
funktioniert jedoch.Aktivieren Sie Git Tab Autocomplete für Zsh
Neue Macs verwenden standardmäßig die Zsh-Shell. Wenn Sie Zsh verwenden, fügen Sie die folgende Zeile zur Datei ~/.zshrc hinzu und starten Sie Ihre Terminal-Anwendung neu:
autoload -Uz compinit && compinit
Alternativ können Sie die folgenden beiden Befehle in Ihrer Terminalanwendung ausführen, um die erforderliche Zeile zur .zshrc-Datei hinzuzufügen und Ihre Shell neu zu starten.
echo 'autoload -Uz compinit && compinit' >> ~/.zshrc
source ~/.zshrc
Die automatische Vervollständigung des Git-Tabs ist jetzt auf Ihrem Mac aktiviert.
Mit Hilfe dieser Antwort habe ich es mit diesen Befehlen gelöst
curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash
Dann habe ich die Datei durch Ausführen bearbeitet vi ~/.zshrc
und den folgenden Teil hinzugefügt
if [ -f ~/.git-completion.bash ]; then
. ~/.git-completion.bash
fi
Dann habe ich ausgeführt, source ~/.zshrc
dann begannen die Git-Vorschläge richtig zu funktionieren.
ERROR: this script is obsolete, please see git-completion.zsh
Für Benutzer von bash 5 können Sie das Homebrew-Paket installieren bash-completion@2
und Folgendes zu Ihrer ~/.bash_profile
.
[[ -r "$(brew --prefix)/etc/profile.d/bash_completion.sh" ]] && . "$(brew --prefix)/etc/profile.d/bash_completion.sh"
Hier ist, was bei Sierra für mich funktioniert hat. Hier gefunden .
Nach der Installation bash-completion
und dem Hinzufügen des Snippets zu Ihrem .bash_profile
:
cd /usr/local/etc/bash_completion.d
ln -s /Applications/Docker.app/Contents/Resources/etc/docker.bash-completion
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-machine.bash-completion
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-compose.bash-completion
Matthäus Kuraja