web-dev-qa-db-fra.com

Comment mettre à niveau Git vers la dernière version sur macOS?

Je viens d'acheter un nouveau Mac avec OS X Lion et j'ai vérifié dans le Terminal quelle version de git est installée par défaut. J'ai eu la réponse

git --version
> git version 1.7.5.4

Je souhaite mettre à niveau git vers la dernière version 1.7.8.3. J'ai donc téléchargé le programme d'installation de dmg "git-1.7.8.3-intel-universal-snow-leopard.dmg" et je l'ai lancé.

Après l’installation, le terminal indique toujours que la version est la 1.7.5.4. Qu'est-ce que je fais mal?

137
Nicolas Renon

Ce serait probablement mieux si vous ajoutiez:

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

dans un fichier nommé .bashrc dans votre dossier personnel. De cette façon, tout autre logiciel que vous pourriez installer dans /usr/local/git/bin sera également trouvé en premier.

Pour un moyen facile de faire cela, tapez simplement:

echo "export PATH=/usr/local/git/bin:/usr/local/sbin:$PATH" >> ~/.bashrc

dans le terminal et il le fera pour vous.

54
kmikael

C'est simple si vous avez déjà Homebrew: En supposant que vous avez installé Homebrew, tapez ce qui suit:

brew install git

Une fois qu'il est installé, tapez les deux lignes suivantes, ce qui définira notre chemin vers la distribution locale git au lieu de la Apple).

export PATH=/usr/local/bin:$PATH
git --version

SI VOUS N'AVEZ PAS DE HOMEBREW, SUIVEZ CES ÉTAPES Version vérifiée

$ git --version

Sauvegarder (ou supprimer) Apple git (facultatif)

$ Sudo mv /usr/bin/git /usr/bin/git-Apple

Installez Homebrew si vous n’avez pas

$ /usr/bin/Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Ou mettre à jour si vous avez déjà

$ brew update && brew upgrade

Installer Git avec Homebrew

$ brew install git

Lien symbolique

$ brew link --force git

Fermer le terminal et rouvrir puis vérifier la version

$ git --version

Tu devrais voir…

git version <latest version>

Agréable! Nous sommes en sécurité maintenant! Et la prochaine fois, vous pourrez simplement…

$ brew update && brew upgrade

25
kvm006

J'ai récemment mis à jour le Git sur ma machine OS X également. Je n'ai pas utilisé le même .dmg vous avez utilisé, mais lorsque je l’ai installé, les fichiers binaires ont été placés dans /usr/local/bin. Maintenant, la manière dont mon PATH a été arrangé, le répertoire /usr/bin apparaît avant /usr/local/bin. Alors ce que j'ai fait était:

cd /usr/bin
mkdir git.ORIG
mv git* git.ORIG/

Ceci déplace les plusieurs programmes originaux nommés git* dans un nouveau sous-répertoire qui les garde à l'écart. Après ça, which git montre que celui de /usr/local/bin est trouvé.

Modifiez la procédure ci-dessus si nécessaire pour s'adapter à l'emplacement où vous avez installé les nouveaux fichiers binaires.

15
Greg Hewgill

Après avoir recherché "problèmes de mise à niveau de git sur mac" sur Google, j'ai lu plusieurs articles et j'ai tenté les solutions suivantes avant de résoudre le problème en effectuant l'étape 4:

  1. J'ai mis à jour mon chemin de terminal en utilisant la commande d'exportation mentionnée ci-dessus. A chaque fois que je quitte le terminal et que je le redémarre, quand je tape git --version _ le terminal, il retourne toujours l'ancienne version 1.8.

  2. J'ai suivi les instructions README.txt pour la mise à niveau vers la version 2.0.1 actuelle fournie avec le programme d'installation .dmg et quand j'ai redémarré le terminal, je n'y vais toujours pas.

  3. J'ai cherché le dossier/etc/path/comme indiqué ci-dessus et le répertoire appelé "path" n'existe pas sur mon Mac. J'utilise OS X Mavericks version 10.9.4.

  4. Ensuite, je me suis rappelé que Homebrew est installé sur mon Mac et exécute les éléments suivants:

    brew --version
    brew update
    brew search git
    brew install git
    

Ceci a finalement résolu mon problème. Si quelqu'un a une idée de la raison pour laquelle cela a fonctionné, une analyse plus approfondie serait grandement appréciée. Il me reste probablement quelques paramètres de chemin restants sur mon système après avoir travaillé avec Ruby l'année dernière.

14
Shaun English

si vous utilisez homebrew, vous pouvez mettre à jour les liens sim en utilisant

brew link --overwrite git
8
rafaecheve

Le programme d’installation de la page d’accueil de git s’installe dans /usr/local/git par défaut. Cependant, si vous installez XCode4, une version git sera installée dans /usr/bin. Pour vous assurer que vous pouvez facilement mettre à niveau à partir du site Web et utiliser la dernière version de git, modifiez les informations de votre profil pour placer /usr/local/git/bin avant /usr/bin dans $ PATH ou modifiez /etc/paths et insérer /usr/local/git/bin comme première entrée.

Cela peut aider au moins quelqu'un de changer l'ordre dans / etc/path a fonctionné pour moi.

6
Mohammad Arif

le moyen le plus simple que j'ai trouvé jusqu'ici est de git site officiel. Il a juste calculé les dépendances et téléchargé toutes les bibliothèques/outils nécessaires

http://git-scm.com/book/en/Getting-Started-Installing-Git

L’autre solution consiste à installer Git via MacPorts ( http://www.macports.org ). Si vous avez installé MacPorts, installez Git via

Sudo port install git-core + svn + doc + bash_completion + gitweb

5
Kiddo

Afin de conserver les deux versions, je viens de changer la valeur de la variable d'environnement PATH en plaçant le chemin git de la nouvelle version "/ usr/local/git/bin /" au début, il oblige à utiliser la version la plus récente:

$ echo $ PATH

/ usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin /

$ git --version

git version 2.4.9 (Apple Git-60)

valeur d'origine:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin: / usr/local/git/bin /

nouvelle valeur:/ usr/local/git/bin /:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin

$ export PATH =/usr/local/git/bin /:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin

$ git --version

git version 2.13.0

2

Pour moi, avec Homebrew 1.6.7, les éléments suivants ont fonctionné:

brew upgrade git
1

Je l'ai fait de cette façon:

  1. Ouvrez l'application GitHub installée sur Mac
  2. Cliquez sur l'onglet Avancé → Installer les outils de ligne de commande.
  3. Une fois que vous avez reçu le message que toutes les commandes ont été installées, fermez votre terminal et rouvrez-le.
  4. Maintenant, vérifiez git --version, il devrait vous donner la dernière version.
0
Waaheeda

Sans Homebrew

  1. Utilisez l'installateur depuis le site Web de git.
  2. Mettez à jour votre ~/.bash_profile fichier. Remarquez que cette commande diffère de la réponse de kmikael par ce qu’elle met dans le fichier:
    • Autre commande: export PATH=/usr/local/git/bin:/usr/local/sbin/:[and so on]
    • Sous la commande: export PATH="/usr/local/git/bin:/usr/local/sbin:$PATH"
    • Utilisez celui que vous préférez.

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

  1. Si vous utilisez Xcode, vous devrez ajouter des liens symboliques .
    • Exemple: ln -s /opt/local/bin/git /usr/bin/git
  2. Redémarrez le terminal.
    • which git devrait indiquer le répertoire dans le README.txt fichier de la dmg.
    • git --version devrait indiquer la version mise à jour.
    • echo $PATH devrait commencer par /usr/local/git/bin:/usr/local/sbin:
0
GreeKatrina

Je préfère ne pas modifier la hiérarchie des chemins, mais plutôt traiter spécifiquement avec git ... en sachant que je ne me servirai jamais de l'ancien git pour faire ce que git le nouveau git va maintenant gérer . C'est une solution de force brute.

NOTE: J'ai installé XCode sur Yosemite (10.10.2) propre en premier .

J'ai ensuite installé à partir du binaire disponible sur git-scm.com .

$ which git
/usr/bin/git
$ cd /usr/bin
$ Sudo ln -sf /usr/local/git/bin/git
$ Sudo ln -sf /usr/local/git/bin/git-credential-osxkeychain
$ Sudo ln -sf /usr/local/git/bin/git-cvsserver
$ Sudo ln -sf /usr/local/git/bin/git-receive-pack
$ Sudo ln -sf /usr/local/git/bin/git-Shell
$ Sudo ln -sf /usr/local/git/bin/git-upload-archive
$ Sudo ln -sf /usr/local/git/bin/git-upload-pack
$ ls -la
(you should see your new symlinks)
0
azatar