43 votes

remplacer git de Xcode par une version homebrew

J'ai installé XCode et donc git est là aussi. Comme je veux avoir une version plus récente de git, je l'ai installé en utilisant homebrew.

Mais la version homebrew de git n'est jamais appelée puisque mon PATH ressemble à ceci

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

ce qui signifie que le /usr/bin/git est toujours appelé avant /usr/local/bin/git .

Existe-t-il un moyen de changer cela sans modifier le PATH ?

56voto

GoZoner Points 15679

Xcode utilise en fait le GIT qui est stocké dans /Applications/Xcode.app/Contents/Developer/usr/bin . La même version de GIT est installée dans /usr/bin lorsque vous avez installé les outils de ligne de commande dans le cadre de l'installation de Xcode. Ainsi, vous ne pourrez pas changer ce que Xcode utilise (à moins que vous ne soyez prêt à modifier le contenu du paquet Xcode). Si, à partir d'une application terminale, vous voulez utiliser le GIT installé par homebrew, vous avez deux options :

  1. Référencez GIT avec le chemin complet comme /usr/local/bin/git ... Dans ce cas, vous pouvez créer un alias tel que alias mgit=/usr/local/bin/git et ensuite utiliser mgit ... du terminal
  2. Changez le chemin comme suit PATH=/usr/local/bin:$PATH soit dans votre .bashrc o .zshrc si vous utilisez le fichier zsh (ou chaque fois que vous démarrez un terminal à la ligne de commande).

14voto

oppih Points 345

Puisque Xcode a codé en dur sa propre version de git qui est installée sur /Applications/Xcode.app/Contents/Developer/usr/bin/git J'ai réussi à utiliser cette astuce pour contourner le problème :

  1. dans le répertoire Xcode :

    cd /Applications/Xcode.app/Contents/Developer/usr/bin

  2. renommez le git de Xcode comme ceci :

    sudo mv ./git ./git-xcode-usr-bin

  3. lier mon propre git qui est installé par homebrew :

    sudo ln -s /usr/local/bin/git ./git

Et j'ai fait la même chose avec /usr/bin/git

Cela permettra de relier /usr/local/Cellar/git/1.8.0/bin/git (parce que j'utilise git 1.8.0 pour l'instant)

Cela peut certainement causer d'autres problèmes, par exemple lorsque je mettrai à jour la version git du homebrew à l'avenir, cela ne fonctionnera pas pour moi :( et je devrai alors créer un nouveau lien.

Je le fais comme ça parce que je veux résoudre mon propre problème ici. 13177203 . Et après avoir cherché StackOverFlow pendant un long moment, j'ai finalement trouvé cette solution.

8voto

Paul Wenzel Points 168

Si vous utilisez coquille de poisson au lieu de bash, vous pouvez pointer vers votre binaire git préféré en ajoutant ce qui suit à ~/.config/fish/config.fish .

function git
  /usr/local/bin/git $argv; 
end

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X