8 votes

Désactiver /usr/bin/svn pour utiliser le svn installé par brew

J'utilise Lion, et le svn /usr/bin/svn est en version 1.6. Comme j'ai besoin d'utiliser subversion 1.7, j'ai installé svn depuis brew pour qu'il soit installé dans /usr/local/bin/svn.

Comment puis-je désactiver les fichiers svn* afin de pouvoir utiliser svn depuis brew ?

1 votes

15voto

monfresh Points 321

Il existe un moyen plus efficace et plus sûr de spécifier la version d'un exécutable que vous souhaitez que votre ordinateur utilise sans avoir à modifier les exécutables préinstallés sur votre Mac. Il n'est généralement pas recommandé de modifier les outils système par défaut de quelque manière que ce soit.

Vous pouvez profiter de la Variable d'environnement PATH qui vous permet d'énumérer plusieurs répertoires dans lesquels vous souhaitez que votre Mac effectue des recherches lorsqu'il cherche des exécutables.

Afin d'utiliser la dernière version de svn, ou de tout autre outil que vous avez installé dans l'application /usr/local/bin avec Homebrew (ou MacPorts, manuellement, etc), vous voulez dire à votre Mac de regarder d'abord dans /usr/local/bin avant de chercher dans la base de données par défaut /usr/bin . Pour ce faire, vous devez définir l'élément PATH dans votre .bash_profile Il s'agit d'un fichier qui se charge automatiquement chaque fois que vous ouvrez une nouvelle fenêtre de terminal.

Vous pouvez écrire le PATH dans votre fichier .bash_profile en exécutant cette ligne simple à partir du terminal :

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

Cette commande prend tout ce qui se trouve entre les guillemets simples ( echo ) et l'ajoute (>>) dans un fichier appelé .bash_profile dans le répertoire racine (ou domicile) de votre utilisateur (~/) .

Pour que ces changements prennent effet, vous pouvez soit quitter et relancer le Terminal, soit exécuter cette commande :

source ~/.bash_profile

Si vous voulez faire tout cela manuellement, ouvrez votre .bash_profile avec votre éditeur préféré, puis ajoutez-y cette ligne :

PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

et le sauvegarder. Ensuite, quittez et relancez le Terminal.

0 votes

Je suis d'accord ; c'est mieux que ma réponse. J'ai modifié ma réponse pour montrer cette préférence.

0 votes

Est-ce que ce problème est persistant ? Est-ce qu'il persiste après le redémarrage du système ?

0 votes

Dans mon CHEMIN /usr/local/bin est avant /usr/bin et j'obtiens toujours ce dernier lorsque j'exécute svn . Comment cela est-il possible ?

5voto

Robin Robinson Points 1031

NOTE La réponse de monfresh ci-dessous est meilleure que la mienne. Bien que ma méthode fonctionne, il n'est pas recommandé de renommer ou de modifier les utilitaires du système.

Lorsque j'ai eu besoin de passer du SVN 1.6 au SVN 1.7, j'ai installé ma version construite (sans utiliser Homebrew ou Macports, etc.) dans le dossier suivant /usr/local/bin et renommé tous les anciens exécutables svn en /usr/bin à (nom d'exécutable)-1.6.7.

Alors maintenant which svn donne /usr/local/bin/svn et l'ancien /usr/bin/svn est /usr/bin/svn-1.6.17 .

0 votes

Renommer des fichiers dans /usr/bin Le simple fait de les supprimer vous expose à des mises à jour qui les restaurent, ou à la rupture des programmes qui en dépendent. Pourquoi ne pas simplement mettre /usr/local/bin d'abord dans votre PATH ?

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