J'ai installé git code> et
svn code> avec homebrew sur mon Mac en cours d'exécution 10.7.4. Il existe une version de
svn code> sur ma machine dans
/ usr / bin code> qui semble être la version qui
git svn code> utilise.
$ which git svn
/usr/local/bin/git
/usr/local/bin/svn
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin:/usr/local/git/bin
3 Réponses :
Votre système dispose de deux versions de subversion installées: 1.6.17 dans avoir eu un coup d'œil rapide à travers le code, il n'y a rien dans L'option facile, si vous avez accès, consiste à remplacer / usr / bin / svn code> et 1.7.5 dans
/ usr / local / bin / svn code> . Lorsque vous exécutez
svn code>, il analyse votre
$ chemin code> correctement pour ramasser celui-ci dans
/ usr / local / bin / svn code>, mais
git-svn code> ne dérange pas et utilise simplement la version dans
/ usr / bin code>. p>
git-svn.pl code> ou Alien-svn (la bibliothèque de subversion perl que
git-svn code> utilise) Points explicitement à tout
svn code> binaire, donc je soupçonne qu'il s'agit d'une "fonctionnalité" de sécurité pour éviter de regarder votre page de route
$ p>. p>. P>.
/ usr / bin / svn code> avec
/ usr / local / bin / svn code>; éventuellement en supprimant et en remplaçant avec un lien symbolique. Sinon, je soupçonne que vous devrez creuser la source de
git-svn.pl code> et réécrivez-le pour accepter votre chemin personnalisé
$ chemin p>. P>.
J'ai essayé l'idée symbolique, il n'a pas fonctionné, Git-Svn a toujours réussi à utiliser SVN 1.6.17, ce qui n'a pas de sens pour moi. J'aimerais savoir comment désinstaller complètement cette version de SVN.
J'ai fait un peu de creuser et il ressemble à Git-Svn utilise les liaisons Perl de Subversion. Après une petite expérimentation, j'ai trouvé que l'installation d'une version améliorée de SVN avec Perl activé em> corrigé le problème. Sur Mac OSX, cela irait quelque chose comme ceci: # First, I had to take ownership of the perl libs dir,
# so homebrew could create perl modules
chown $USER -R /Library/Perl/5.12/darwin-thread-multi-2level
# Then, remove and reinstall Subversion, but add the perl option:
brew remove svn
brew install --perl svn
# Lastly, reinstall git (this may be optional, but it may also help.)
brew remove git
brew install git
J'ai essayé votre solution et que git svn -version se réfère toujours à la version SVN System SVN donc je renomme le /library/developer/commandlinetools/library/perl/5.16/darwin -thread-Multi-2level \ svn Code> to
SVN-Annant code> et
/Library/developer/commandlinetools/library/perl/5.16/darwin -thread-Multi-2level \ auto \ svn code> to
à
Svn-old code> (Utiliser
sudo code>) et le remplacer par Symlink de
/usr/local/cellar/subversion/1.8.8/Library/Perl/5.16/darwin- Thread-multis-2level / svn code> et
/usr/local/cellar/subversion/1.8.8/Library/perl/5.16/darwin- fil-fil-2level / auto / Svn code> respectivement
Pour ceux qui atteignent ici avec le même problème: Maintenant, Git a une option d'utilisation de la version de SVN de Homebrew:
brew install --with-brewed-svn git
Quelle est la sortie de
quel svn code> et ce qui est dans votre chemin
code>