Ich habe den Prozess git-completion
gemäß der Beschreibung unter https://medium.com/@farooqyousuf/autocomplete-git-commands-and-branch-names-in-terminal-on-mac-os-x-4e0beac0388a verfolgt :
Der erste Schritt besteht darin, diesen Befehl in Ihrem Terminalfenster auszuführen. Dabei wird im Grunde das Skript 'git-completion.bash' abgerufen und in Ihr Ausgangsverzeichnis gestellt.
curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash
Fügen Sie nun diese Zeile zu Ihrem '~ / .bash_profile' hinzu. Dies ermöglicht die Ausführung des Git-Autocomplete-Skripts, falls vorhanden
if [ -f ~/.git-completion.bash ]; then
. ~/.git-completion.bash
fi
Sie können jetzt alle Terminalfenster neu starten oder nur das Terminalfenster aktualisieren, in dem Sie dieses Skript verwenden möchten.
source ~/.bash_profile
Folgendes ist der Fehler, den ich bekomme, wenn ich tab
nach der Eingabe die Taste drücke git
:
unknown option: --list-cmds=list-mainporcelain,others,nohelpers,alias,list-complete,config
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
git version 2.17.1
Antworten:
Ich bin auf genau dasselbe Problem gestoßen. Nach einigem Graben habe ich endlich herausgefunden, was das Grundproblem ist.
Sie haben einige wichtige Änderungen am
git-completion.bash
Skript vorgenommen, die eine neue Funktion in git v2.18, erfordern--list-cmds
. Das Problem ist, dass noch keiner der Paketmanager auf git v2.18 aktualisiert hat.In den meisten Anweisungen wird angegeben, dass raw.githubusercontent.com/git/git/
master
/contrib/completion/git-completion.bash heruntergeladen werden soll. Dies ist jedoch nicht unbedingt die beste Option, da Sie manchmal eine neueregit-completion.bash
als die von Ihnen unterstützte Version von git herunterladen .Die Lösung besteht also darin, die
git-completion.bash
Version herunterzuladen, die Ihrer Git-Version entspricht. Dann geben Sie es erneut ein. In diesem Fall:https://raw.githubusercontent.com/git/git/v2.17.1/contrib/completion/git-completion.bash
Beachten Sie, dass
v2.17.1
statt auf verwiesen wirdmaster
. Wenn Sie später git v2.18 installieren, können Sie zurück zumaster
oderv2.18
tag wechseln .quelle
git-completion.bash
sie früher funktionierte.Ein Upgrade des Git auf die neueste Version ist die einfachste Lösung. https://git-scm.com/download/mac
Danach stellen Sie sicher, dass Sie die Schritte befolgen
curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash
Fügen Sie diesen kleinen Befehl in die
.bash_profile
Datei einif [ -f ~/.git-completion.bash ]; then . ~/.git-completion.bash fi
quelle
Baue es nicht von der Quelle; stattdessen von MacPorts installieren .
Geben Sie den folgenden Befehl ein, um git mit automatischer Vervollständigung zu installieren:
Schließen Sie Ihr Terminal und öffnen Sie es erneut. Die Git-Vervollständigung sollte funktionieren
quelle
sudo find / -type -name "git-completion.bash"
und veröffentlichen Sie die Ergebnisse in Ihrer Frage.Sie sollten Ihre Git-Version überprüfen und sicherstellen, dass sie auf mindestens 1.8 aktualisiert ist.
Ich hatte eine ältere Version 1.7.11, aber das hat nicht funktioniert und Sie haben den gleichen Fehler.
quelle
git version 2.17.1
Wenn Sie Homebrew verwenden, möchten Sie vielleicht
Upgrade-Git:
brew upgrade git
Quell die installierte git-completion.bash in deinem
~/.bash_profile
:. /usr/local/etc/bash_completion.d/git-completion.bash
Dadurch wird sichergestellt, dass die installierten Versionen von git und Vervollständigungsskript übereinstimmen.
quelle