En essayant d'obtenir un vieux dump svn d'un projet sous le contrôle de git, j'ai rencontré un problème intéressant. Chaque fois que je lance git svn
, je reçois une erreur disant que ce n'est pas une commande git, mais il existe une documentation à ce sujet que je peux obtenir à l'aide de git help
. Y at-il quelque chose qui ne va pas avec mon installation ou est-ce que je manque quelque chose ici?
Edit: je devrais probablement aussi mentionner que j’exécute msysGit version 1.6.1.9.g97c34 sous Windows XP, et l’erreur que j’obtiens est la suivante:
$ git svn git: 'svn' n'est pas une commande git. Voir 'git --help' . Voulez-vous dire l'un de ceux-ci? fsck spectacle
Je ne suis pas sûr que (git svn ait jamais fonctionné } avec la distribution récente de Git Windows (version 1.5.6).
De nombreux problèmes ont été signalés avant, donc git svn
risque fort de ne pas être inclus dans les versions actuelles de msysGit.
Un autre développement "Git sur Windows" actuellement actif, mingw.git déclare dans son README que svn ne fonctionne pas.
Ce fil de Msysgit suggère que git svn peut être réintégré à certains moments, mais les progrès sont encore lents.
Mise à jour: à partir de MSysGit1.6.2 (début mars 2009), git-svn
fonctionne à nouveau. Voir cette _ { SO question) .
Mise à jour: avec un moderne (2017) Git pour Windows 2.x _, git svn
est déjà inclus.
Pas besoin de Sudo apt-get install git-svn
, ce qui ne serait possible que dans une session session Shell WSL (Windows Subsystem for Linux) de toute façon.
Je viens de vérifier ma boîte Ubuntu nouvellement installée et elle n’a pas été installée même avec git-core installé. Un simple:
Sudo apt-get install git-svn
ou votre équivalent de distro devrait le réparer.
Sur Ubuntu:
Sudo add-apt-repository ppa:git-core/ppa
apt-get update
Sudo apt-get install git-svn
Pour la postérité: Sur CentOS 7, lancez simplement Sudo yum install git-svn
.
Sous mon système, j'ai eu ce problème:
$ git svn
Can't locate SVN/Core.pm in @INC (@INC contains: /usr/lib/Perl5/site_Perl/5.10.0
/usr/lib/Perl5/5.10.0/i486-linux-thread-multi
/usr/lib/Perl5/5.10.0
/usr/lib/Perl5/site_Perl/5.10.0/i486-linux-thread-multi
/usr/lib/Perl5/site_Perl/5.8.8
/usr/lib/Perl5/site_Perl
/usr/lib/Perl5/vendor_Perl/5.10.0/i486-linux-thread-multi
/usr/lib/Perl5/vendor_Perl/5.10.0
/usr/lib/Perl5/vendor_Perl/5.8.8
/usr/lib/Perl5/vendor_Perl .) at
/usr/libexec/git-core/git-svn line 29.
parce que je n'ai pas de liaisons Subversion Perl installées. Essayez de les installer et de relancer la commande.
J'ai eu la même erreur sous Cygwin 1.7. Ce problème a été résolu en installant le paquet git-svn avec l’installation de Cygwin.
Version MacPorts:
port install git +svn
(Remarque: vous aurez probablement besoin de port deactivate git
en premier)
Avait un problème similaire sur RHEL6, c’est-à-dire
Impossible de localiser Git/SVN.pm dans @INC (@INC contient:/usr/local/share/Perl5/usr/local/lib64/Perl5/usr/lib64/Perl5/vendor_Perl/usr/share/Perl5/vendor_Perl/usr/lib64/Perl5/usr/share/Perl5.) à la ligne/usr/local/libexec/git-core/git-svn.
Ma solution:
Sudo yum install Subversion-Perl
chmod 755 /usr/local/share/Perl5/ (and sub dirs, as they were only readable by root)
Sur Gentoo, vous devez construire git avec USE = "Subversion"
Si git-svn ne fait pas partie de mSysGit, je vous recommande d'utiliser un petit serveur UNIX pour héberger votre référentiel de passerelle qui clone votre référentiel svn, puis de le cloner sur votre machine Windows. C'est l'approche que j'utilise pour interagir avec CVS depuis git.
Sur CentOS j'ai utilisé
Sudo yum install git-svn
Sur Fedora je devais l'installer avec
Sudo dnf install -y git-svn