Ich habe die neueste Version von Git (1.8.3) mit Homebrew installiert, aber wenn ich tippe
git --version
In meinem Terminal wird Folgendes gedruckt:
git version 1.7.10.2 (Apple Git-33)
Was soll ich tun, um die alte Version von Git durch die neue zu ersetzen?
Antworten:
Vielen Dank an alle für hilfreiche Antworten. In meinem Fall das Hinzufügen
in
~/.bash_profile
gefolgt vonlöste das Problem für meinen Benutzer.
quelle
/usr/local/bin
oben/usr/bin
in/etc/paths
.brew doctor
für die Diagnose des Problems/etc/paths
. Es reicht möglicherweise nicht aus, nur den "Export" zu definieren, wenn/usr/bin
"Vorrang" vor/usr/local/bin
(vom Brauen) ...source ~/.bash_profile
werde das nochmal lesen. Ein Neustart ist wahrscheinlich schneller / einfacher. :)Ok, ich bin bereit, mich ernsthaft mit SCM zu befassen.
Nein, das wollte ich nicht. I <3 Homebrew, also:
Alles bereit?
Doh! (Kratzer am Kopf)
Ah, Apples Trottel ist in / usr / bin, also übertrumpft er den Homebrew-Trottel. Was ist zu tun?
(A) Benennen Sie einfach Apples Binärdatei um
(B) Lassen Sie Homebrew-Managed einen Vorrang haben:
[PATH-Export bearbeiten, zB in ~ / .zshrc (oh-my-zsh + iTerm2 FTW! / tangent)]
[speziell: move / usr / local / bin / git: before / usr / bin:]
... und / oder (z. B. um Homebrew-Trumpf-System installieren zu lassen und den Vorrang für alle Shells und Benutzer zu haben) bearbeiten Sie auch die Datei / etc / path, [moving / usr / local / bin above / usr / bin ]
Nehmen wir jedoch nur den einfachsten / am wenigsten invasiven Ansatz an:
Hat es funktioniert?
So weit so gut, jetzt der Moment der Wahrheit:
w00t! :) Zeit zum Lesen http://git-scm.com ! :)
quelle
which git
Hinweis darauf/usr/local/bin/git
hat das bei mir nicht funktioniert. Um dies zu lösen, musste ich die GitHub Mac App deinstallieren.sudo mv /usr/bin/git /usr/bin/git-apple mv: rename /usr/bin/git to /usr/bin/git-apple: Operation not permitted
Stand 2019
Alle hier in mehreren Antworten genannten Tricks sind auf macOS Sierra & Mojave mit neuestem Homebrew nicht mehr nötig. Vergessen Sie
export PATH="..."
und Änderungen an~/.bash_profile
.Das machst du einfach
und du bist fertig.
Öffnen Sie zur Bestätigung ein neues (!) Terminalfenster und geben Sie ein
quelle
brew link --overwrite git
arbeitete für michSobald Sie den neuesten Git über brew (
brew install git
) installiert haben , starten Sie diesen Einzeiler (wie von vorgeschlagenbrew doctor
), falls er noch nicht vorhanden ist:Beenden Sie dann Terminal und öffnen Sie es erneut (starten Sie Ihre Bash-Sitzung neu). Sie müssen dies auch dann tun, wenn Ihr PATH bereits korrekt war, da ZSH und Bash den Inhalt von PATH zwischenspeichern (siehe Dokumentation zum integrierten Befehl
hash
).Das sollte wirklich schnell gehen.
quelle
Wenn Sie tippen
In Terminal.app oder der Konsole hat Ihr Kommentar zu einer anderen Frage angegeben, dass die zurückgegebene Version der Git in / usr / bin / git ist
Wenn Sie Xcode 4.5 (und neuer) installiert haben, geben Sie Folgendes ein
In Terminal.app oder Konsole ist die zurückgegebene Version der Git im Xcode-App-Bundle.
Wenn Sie Homebrew verwenden, um git zu installieren und zu aktualisieren, ist dies die einfachste Lösung
Benennen Sie den ursprünglichen Speicherort um, indem Sie ihn mit mv umbenennen. Zum Beispiel
sudo mv / usr / bin / git / usr / bin / git-ORIGINAL
Erstellen Sie eine weiche Verknüpfung mit 'ln -s' zu der Git-Binärdatei, die Sie mit Homebrew installiert haben.
Beachten Sie, dass MattDMo in den Kommentaren eine bessere Lösung hat.
quelle
/usr/bin
, da es möglich ist, dass andere Programme, die Sie nicht einmal kennen, von Unwägbarkeiten abhängen, die mit einer bestimmten Version verknüpft sind. Die einfachste Lösung, ohne etwas zu verschieben, besteht darin/usr/local/bin
, die$PATH
Umgebungsvariable vor der/usr/bin
Installation von/usr/local/bin
Ich habe es versucht und es funktioniert für mich.
quelle
Sie müssen das ursprüngliche Git von apple in
/usr/bin/
zB git-org umbenennen, da/usr/bin
es sich normalerweise vorher/usr/local/bin
in Ihrem Pfadverzeichnis befindet, in dem sich das Brauzeug befindet.Damit:
und vergessen Sie nicht, den Brühgit zu verbinden
Dies setzt voraus, dass
/usr/local/bin
es sich um eine$PATH
Umgebungsvariable handelt. Wenn Sie immer noch Probleme haben, versuchen Sie zu laufenund beheben Sie die dort genannten Probleme.
quelle
/usr/local/bin
(Homebrew das Verzeichnis installieren, IIRC) an dem$PATH
vor/usr/bin
statt herumschlagen mit Umbenennung und Sichern usw.Installiere git mit brew, das lass dies laufen.
brew link --force git
Schließen Sie das Terminal und öffnen Sie es erneut, um es auszuführen
which git
.quelle
brew link --overwrite git
funktioniertWenn Sie git direkt von git-scm.com installieren und statt der (alten) Apple-Version von git die neueste heruntergeladene Version verwenden möchten.
/usr/local/bin/git
git --version
, wenn es Apple alte Version von Git zurückgibt, dann fahren Sie unten fortcd ~
(Wechseln Sie in Ihr Home-Verzeichnis)vi .bashrc
i
(um Text in den vi-Editor einzufügen)export PATH.......
, drücken Sie oben auf dem Export eingeben und geben Sie die folgenden:export PATH=/usr/local/:$PATH
(Pay äußerste Vorsicht mitPATH
variablen Durcheinander nicht es auf sonst wird es Probleme für Ihr Betriebssystem verursachen) (hoffentlich neue git installiert werden soll/usr/local/git
):wq
(um die.bashrc
Datei zu speichern )git --version
Sie es jetzt (Sie sollten eine neue Version sehen)quelle
Es kommt darauf an, woher dein Schwachkopf kommt. Xcode bringt zum Beispiel eine Version mit, die Ihnen vielleicht im Weg steht.
Vielleicht tippen
wird zeigen, wo der alte ist.
quelle
/usr/bin/git
...Wenn Sie ein Upgrade mit Homebrew unter OSX durchführen möchten, bei dem das Kompilieren mit gcc erforderlich ist, müssen Sie die aktualisierten Befehlszeilentools von Xcode installieren. Ja, ich weiß, es ist schade, wenn Sie ein systemweites Tool in den Einstellungen einer App verstecken müssen.
Schritte
brew doctor
alle anderen Hindernisse aus und beheben Sie siebrew upgrade
, um alle Pakete gleichzeitig zu aktualisierenquelle