Mehrere installierte Versionen von Git - Centos

8

Ich habe git 1.6 vor ein oder zwei Jahren manuell installiert. Ich habe heute festgestellt, dass die Version 1.7 in yum verfügbar ist, und habe sie installiert (Paket git-all). Ich erhalte jetzt die folgende Ausgabe:

[root@ovz5197 ~]# git --version
bash: /usr/local/bin/git: No such file or directory
[root@ovz5197 ~]# which git
/usr/bin/git
[root@ovz5197 ~]# /usr/bin/git --version
git version 1.7.4.1
[root@ovz5197 ~]# 

Irgendeine Idee, warum die Ausgabe von whichder ersten Zeile oben zu widersprechen scheint?

EoghanM
quelle
Ich war versucht, Sie zu fragen, wie Ihre $PATHVariable aussieht, aber wie which gites sich herausstellt, sollte es in Ordnung sein. Der Grund könnte jedoch in Ihrem liegen $PATH?
Torbjörn
Was ls -l /usr/local/bin/gitzeigt? Und file /usr/local/bin/git?
Gilles 'SO - hör auf böse zu sein'

Antworten:

7

Wenn Sie gitdiese Instanz von Bash bereits ausgeführt haben, als es eine gab /usr/local/bin/git, wird der alte Speicherort in einem Cache gespeichert. Führen Sie aus hash -r, um den Cache zu leeren. Jede Bash-Instanz verfügt über einen eigenen Cache, sodass neu gestartete Bash-Instanzen an der richtigen Stelle angezeigt werden.

Andernfalls haben Sie offensichtlich eine Datei /usr/local/bin/git, die ausführbar ist, aber nicht funktioniert, da der Loader nicht auf dem System vorhanden ist. Siehe Erste Meldung „Nicht gefunden“ , wenn auf einem 64-Bit - System mit einem 32-Bit - Binär - Laufe für einen ähnlichen Fall.

Gilles 'SO - hör auf böse zu sein'
quelle
Ja, es muss ein Cache gewesen sein - das Verhalten ist jetzt wie erwartet, vielen Dank für die Erklärung!
EoghanM