Ich stoße auf ein wirklich seltsames Problem, wenn ich versuche, die neueste Version von Git zu verwenden, die ich gerade über Homebrew installiert habe. which git
verweist mich auf die Homebrew-Installation, aber der Aufruf git
gibt die ursprüngliche Version zurück, die mit OS X installiert wurde.
Ich habe zuerst überprüft, welche Originalversion ich verwendet habe.
[user@home ~]$ git --version
git version 1.8.5.2 (Apple Git-48)
Dann bin ich zu Homebrew gegangen, um die neueste Version zu installieren.
[user@home ~]$ brew install git
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/git-2.0.0.mavericks.bottle.2.tar.gz
######################################################################## 100.0%
==> Pouring git-2.0.0.mavericks.bottle.2.tar.gz
==> Caveats
The OS X keychain credential helper has been installed to:
/usr/local/bin/git-credential-osxkeychain
The 'contrib' directory has been installed to:
/usr/local/share/git-core/contrib
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
zsh completion has been installed to:
/usr/local/share/zsh/site-functions
==> Summary
Antwort1
Shells verwalten einen Cache der Pfade, in denen ausführbare Dateien in der $PATH
Variable gefunden wurden. Es wurde also zwischengespeichert , /usr/bin/git
anstatt /usr/local/bin/git
, da letzteres beim Starten Ihrer Shell nicht vorhanden war. Wenn Sie hash -r
Bash von Ihrem aktuellen Terminal aus ausführen, wird dieser Cache geleert, und dann sollte die erste in gefundene Instanz $PATH
diejenige sein, die ausgeführt wird.
Antwort2
Ich habe genau das gleiche Problem. Hier ist meine Lösung.
brew uninstall git
# make sure everything is alright, maybe brew will give you some hint
brew doctor
brew update
brew install git
# magic happen, brew will give you hint /usr/bin occurs before /usr/local/bin
# and recommend you run following command
brew doctor
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile
Danach sind Sie fertig, können jedoch beim Ausführen keine Änderungen sehen git --version
. Melden Sie sich einfach ab, wieder an und führen Sie es git --version
erneut aus.
Antwort3
Wenn Sie Homebrew zum Aktualisieren von Git auf Ihrem Computer verwenden, führen Sie die folgenden Schritte aus:
brew doctor
Beheben Sie die vorgeschlagenen Probleme
brew update
ob eine neuere Version von Homebrew verfügbar ist
brew install git
um die neueste Version von Git herunterzuladen und zu installieren
Durch das Laufen brew doctor
wirst du wissen, dass
Warnung: Sie haben nicht verbundene Fässer in Ihrem Keller
Die Ausführung brew link git
führt zu dem Fehler
Fehler: Symlink von bin/git nicht möglich
Das Ziel /usr/local/bin/git existiert bereits. Sie können es entfernen:
rm '/usr/local/bin/git'
brew link --overwrite git
um den symbolischen Link zu überschreiben und auf das installierte Git Brew zu verweisen.
Antwort4
Mein Problem war, dass ich die Mac GitHub-App installiert hatte. /usr/local/bin/git
zeigte auf die Git-Version der App, nicht auf die Homebrew-Version. Durch die Deinstallation der GitHub-App wurde das Problem für mich behoben.