26 votes

D'où vient /usr/bin/git ?

J'ai un petit problème. À un moment donné, j'ai utilisé git mais je ne me souviens pas s'il était installé par défaut sur Lion.

Voici la version et le chemin de git :

$ git --version
git version 1.7.5.4
$ which git
/usr/bin/git

J'ai aussi un git plus récent dans /usr/local/git

Je voudrais utiliser la nouvelle version mais je ne sais pas si en supprimant l'ancienne (/usr/bin est prioritaire dans la variable path) je vais casser quelque chose.

Quelle est la bonne façon de résoudre ce conflit ?

26voto

Steven Fisher Points 2201

Git est installé par Xcode. Je doute que vous ayez des problèmes si vous le remplacez, mais je ne peux pas vous donner une réponse définitive à ce sujet

  1. Ce que je ferais c'est renommer l'ancien /usr/bin/git a git_old puis se fier à votre chemin pour sélectionner le nouveau.
  2. Si cela ne fonctionne pas déplacez le nouveau vers /usr/bin . Je doute que Xcode soit pointilleux sur la version de git qu'il utilise.
  3. Si cela ne fonctionne toujours pas déménagement git_old retour à /usr/bin/git et utilisez soit un chemin direct, soit un renommage, soit un alias pour le nouveau.

Je doute que vous ayez à aller au-delà du numéro 1 ci-dessus, cependant. Cela devrait être suffisant.

Edit : J'ai lu votre post original à l'envers. La première chose que vous devriez faire est de vous assurer que votre chemin inclut le nouveau répertoire git AVANT le répertoire qui contient l'ancien git.

9voto

flipdoubt Points 4140

Vous n'avez pas besoin d'aller pirater l'autre version, à moins que vous ne soyez vraiment à l'étroit. Editez votre .bash_profile et assurez-vous que /usr/local/bin est placé devant /usr/bin dans votre variable PATH.

Personnellement, je préfère adopter un schéma avec des chemins d'outils définis et le chemin construit à partir de ces derniers, par exemple

GIT_HOME=/usr/local

PATH=${GIT_HOME}/bin:${PATH};export PATH
MANPATH=${GIT_HOME}/share/man:${MANPATH};export MANPATH

Cela signifie que tout ce qui recherche des outils en utilisant le PATH trouvera votre version de git, et que tout ce qui doit vraiment avoir la version /usr/bin aura très probablement ce chemin câblé et pourra toujours la trouver.

6voto

davidmatas Points 211

J'ai eu le même problème : une ancienne version de Git qui était la version Xcode. J'ai essayé d'installer une nouvelle version de Git à partir de http://git-scm.com/ et a mis à jour le bash_profile avec

PATH=/usr/local/git/bin:$PATH

Puis rechargez votre bash et essayez git --version

Ça a marché pour moi :)

1voto

Ken Points 3802

Sur mon système (10.7.3, Xcode 4.3.2), la fonction de Xcode git n'est pas installé dans /usr/bin/git . Tout Xcode 4 (comme toutes les applications de l'App Store, je pense) est dans son bundle .app. Plus précisément, son git se trouve à /Applications/Xcode.app/Contents/Developer/usr/bin/git .

J'utilise git (via Xcode) tout le temps, et je n'ai pas d'expérience dans ce domaine. /usr/bin/git du tout ici. Il ne fait donc pas non plus partie de l'installation par défaut de Lion, ou du moins, pas à cet endroit.

Pour info, le git dans le bundle Xcode.app possède un fichier --version qui se lit comme suit :

git version 1.7.7.5 (Apple Git-26)

donc je parie que votre /usr/bin/git est votre propre installation, et la mettre à jour ne peut rien faire de mal.

Alternativement, vous pouvez installer Xcode (c'est gratuit !), et mettre /Applications/Xcode.app/Contents/Developer/usr/bin/ dans votre $PATH, mais c'est un peu exagéré si vous ne voulez que git.

1voto

Tom Points 11

Ken a raison de dire que git n'était disponible que dans le chemin d'accès à Xcode.app. Quand j'ai installé Mountain Lion (10.8), j'ai soudainement eu git dans /usr/bin/git, donc c'était un ajout de Mountain Lion pour autant que je puisse dire...

Bien que... j'ai installé pas mal de choses depuis et je ne suis pas entièrement sûr que ce n'était pas une dépendance pour quelque chose d'autre.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X