232 votes

Comment utiliser le git installé par Homebrew sur Mac ?

J'ai installé la dernière version de git (1.8.3) en utilisant homebrew mais lorsque je tape

git --version

dans mon terminal, il s'imprime :

git version 1.7.10.2 (Apple Git-33)

Que dois-je faire pour remplacer l'ancienne version de git par la nouvelle ?

2 votes

Vous avez quelques bonnes réponses - je voulais donc commenter la question. Cherchez-vous des instructions explicites pour installer git depuis les sources à partir de homebrew ou d'un client GUI ou simplement la confirmation qu'OS X inclut plusieurs versions de git dans le système d'exploitation de base ? opensource.apple.com/source/Git (FWIW - Le git le plus récent que j'ai vu dans le paquet d'Apple à ce jour est 1.7.12.4 qui provient de Git-37).

184voto

Jpsy Points 1889

Statut 2022

Toutes les astuces mentionnées ici dans plusieurs réponses ne sont plus nécessaires sur les Macs Intel exécutant MacOS Sierra, Mojave, Catalina, Big Sur & Monterey avec le dernier Homebrew. Oubliez export PATH="..." et les modifications apportées à ~/.bash_profile .

Vous faites simplement

brew install git

et vous avez terminé.

Pour confirmer, ouvrez une nouvelle fenêtre/un nouvel onglet de terminal et tapez

git --version

N'oubliez pas d'ouvrir un nouveau fenêtre. Les terminaux qui étaient ouverts avant que vous ne commenciez à install n'héritera d'aucun changement.

1 votes

Ceci installe git dans /usr/local/bin, qui n'est pas dans le chemin par défaut - vous devez l'ajouter selon la réponse de cweekly afin d'obtenir la version non-apple de git.

9 votes

@chris j'ai redémarré mon terminal après avoir exécuté brew install git et il bascule automatiquement vers le git de homebrew en /usr/local/bin/git il n'est pas nécessaire d'utiliser la réponse de cweekly.

1 votes

@chris /usr/local/bin est dans le $PATH par défaut - regardez dans /etc/paths

175voto

Levani Points 3627

Merci à tous pour les réponses utiles.

Si vous êtes sur Intel, ajoutez

export PATH="/usr/local/bin:${PATH}"

si vous êtes sur ARM/M1, ajoutez

export PATH="/opt/homebrew/bin:${PATH}"

sur ~/.bash_profile suivi par

source ~/.bash_profile

a résolu le problème pour mon utilisateur.

22 votes

Si vous voulez que le changement soit persistant chez tous les utilisateurs, vous pouvez déplacer /usr/local/bin au-dessus de /usr/bin sur /etc/paths .

4 votes

C'est la solution proposée par Homebrew lui-même lors de l'exécution de brew doctor pour diagnostiquer le problème

1 votes

Cette réponse devrait être mise à jour avec la solution proposée par KevinT qui consiste à définir /etc/paths . Définir uniquement l'"exportation" peut ne pas être suffisant, si /usr/bin a "préséance" sur /usr/local/bin (de la brasserie)...

56voto

cweekly Points 637

Ok, je suis prêt à m'occuper sérieusement de scm.

$ git --version
git version 1.9.5 (Apple Git-50.3)

Non, ce n'est pas ce que je voulais. Je <3 homebrew, donc :

$ brew install git

Tout est prêt ?

$ git --version
git version 1.9.5 (Apple Git-50.3)

Doh ! (se gratte la tête)

$ which git
/usr/bin/git

Ah, le git d'Apple est dans /usr/bin, donc il est supérieur à celui de homebrew. Que faire ?

(A) Il suffit de renommer le binaire d'Apple.

(B) Laisser la priorité à celui qui est géré par la maison :

[modifier l'exportation PATH, par exemple dans ~/.zshrc (oh-my-zsh + iTerm2 FTW ! /tangent)].

[spécifiquement : déplacer /usr/local/bin/git : avant /usr/bin :]

... et/ou (par exemple, pour laisser plus largement le matériel homebrew l'emporter sur les installations système, et faire en sorte que la priorité s'applique à tous les shells et utilisateurs) éditer également le fichier /etc/paths, [en déplaçant /usr/local/bin au-dessus de /usr/bin].

Mais il s'agit de l'approche la plus simple et la moins invasive :

$ sudo mv /usr/bin/git /usr/bin/git-apple

Est-ce que ça a marché ?

$ which git
/usr/local/bin/git

Jusqu'ici tout va bien, maintenant le moment de vérité :

$ git --version
git version 2.2.1

w00t ! :) Il est temps d'aller lire http://git-scm.com ! :)

0 votes

PS Rel aux commentaires sur les risques d'édition de /usr/bin : IMHO c'est NBD. (Bien que j'aime la suggestion de Global nomad de faire "sudo ln -s /usr/local/bin/git /usr/bin/git" ... qui assure que tout ce qui appelle explicitement "/usr/bin/git" obtiendra celui géré par brew. Mais selon moi, l'installation de git implique que vous deveniez propriétaire de git sur votre système. Les inquiétudes concernant les processus inconnus qui utilisent une ancienne version de git sont peut-être déplacées. Je recommande de rester à jour avec les versions de git (pour la sécurité, pas seulement les fonctionnalités), et de le gérer vous-même. Homebrew rend cela facile. /$0.02

0 votes

Cela n'a pas fonctionné pour moi, pour le défaire, il suffit de faire : sudo mv /usr/bin/git-apple /usr/bin/git . Le commentaire de Juan Diego Gonzales a fonctionné. (en gros, il faut suivre la réponse acceptée puis redémarrer le terminal).

1 votes

Même avec which git pointant vers /usr/local/bin/git mais cela n'a pas fonctionné pour moi. Pour résoudre ce problème, j'ai dû désinstaller l'application GitHub pour Mac.

27voto

Song WANG Points 511

J'ai essayé ça et ça marche pour moi.

brew link --overwrite git

16voto

Une fois que vous avez installé la dernière version de git via brew ( brew install git ), exécutez cette ligne unique (comme suggéré par brew doctor ) s'il n'est pas déjà présent :

echo "export PATH=/usr/local/bin:$PATH" >> ~/.bash_profile

Ensuite, quittez le terminal et ouvrez-le à nouveau (redémarrez votre session bash). Vous devez le faire même si votre PATH était déjà correct, car ZSH et Bash mettent en cache le contenu de PATH (voir la documentation sur la commande intégrée hash ).

Cela devrait arranger les choses très rapidement.

1 votes

En quoi cela diffère-t-il de la réponse acceptée ?

6 votes

Dans mon cas, je ne savais pas que je devais redémarrer Terminal, donc cette partie peut aider certaines personnes. Est plus rapide que l'acceptée à cause du one liner. Si c'est un concours, je pense que ma réponse est mal placée. Sinon, je pense qu'elle contribue. (Dites-moi si vous voulez que je fasse une modification à la place de celle-ci).

0 votes

Vous faites ça en installant Homebrew.

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