git svn - Erreur de schéma d'URL non reconnue
J'obtiens le message d'erreur suivant sur tentative de cloner svn rep avec git svn:
eugene$ git svn clone https://my.site/svn/here
Initialized empty Git repository in /Users/eugene/Documents/workspace/test/here/.git/
Bad URL passed to RA layer: Unrecognized URL scheme for 'https://my.site/svn' at /usr/local/git/lib/perl5/site_perl/Git/SVN.pm line 148.
svn checkout https://my.site/svn/
fonctionne très bien.
J'ai re-run
cpan SVN::Core
et installer fini bien, mais encore obtenir l'erreur.
source d'informationauteur Eugene | 2012-11-26
Vous devez vous connecter pour publier un commentaire.
Apparemment, vous avez deux versions différentes de la Subversion binaires et l'une de ces versions ne prend pas en charge
http(s)://
protocole.Si vous exécutez
svn --version
la sortie devrait inclure quelque chose comme ceci:ou
Le problème est que
git-svn
ne pas utiliser les mêmes fichiers binaires. Au lieu de cela il utilise une autre version de SVN compilé avec pas de support pour les protocoles http(s)://protocole. Il peut y avoir différentes raisons à cela:Si
svn --version -q
imprime1.7.x
probablement, votre installation de Git est trop vieux pour utiliser cette version de SVN. Ainsi, si vous souhaitez le mettre à niveau comme les dernières versions degit-svn
support SVN 1.7.Si votre défaut SVN installation n'a pas de Perl de liaison installé, SVN::Core utilise les binaires sans http(s) de soutien comme un secours. Ainsi, si vous souhaitez activer les liaisons Perl pour SVN.
Enfin, en raison d'une mauvaise configuration de modules Perl, CHEMIN d'accès/LD_LIBRARY_PATH ou PERL5LIB (ou quel que soit
git-svn
utilise pour trouver les bibliothèques — je ne suis pas expert ici),git-svn
utilise juste invalide binaires.Les mesures particulières relatives à la fixation de la question dépend de la façon dont vous gérer les paquets, par exemple, avec Homebrew que j'avais ressembler à ceci:
ou
Ou avec MacPorts quelque chose comme ceci:
ou
Après cela, essayez de spécifier un bon chemin de la bibliothèque. E. g. si
which svn
imprime/usr/local/bin/svn
essayez d'utiliser/usr/local/lib
comme un chemin de la bibliothèque de modules Perl.Espère que ça aide.
Pouvez-vous faire:
git svn --version
Voir cette question: Comment mettre à niveau la version SVN utilisé par git-svn
Mise à JOUR
Veuillez noter que cette réponse a été en réponse aux affiches de la version originale de la question " d'où le problème peut avoir été lié à l'utilisation d'une ancienne version de
svn
dansgit-svn
. L'affiche a depuis mis à jour git, a déterminé que ce n'était pas la cause, et ont réglé la question pour refléter cela.Ceci est probablement lié à incompability de SVN::Core bibliothèque perl ou XCode outils de ligne de commande de mise à jour.
Vous pouvez essayer de le mettre à jour localement:
ou à l'échelle mondiale:
ou si vous utilisez brew, essayez de l'installer via infusion:
Si cela ne fonctionne toujours pas, veuillez consulter notre PERL5LIB variable:
si c'est quelque chose que vous ne voulez pas, vous pouvez la désactiver pour tester:
Si ça peut aider, trouver le fichier qui est définie (par exemple,~/.de profil) et l'enlever de là.
Si vous avez plusieurs bibliothèques perl, vous pouvez spécifier la variable d'environnement PERL5LIB dans votre
~/.profile
fichier, par exempleParfois, le problème vient simplement pose en pointant PERL5LIB à l'ancienne version de bibliothèque perl, par exemple 5.12 au lieu de 5.16.
Le moyen facile de trouver votre toutes les instances de SVN::Core, vous pouvez essayer:
Articles connexes: