git-svn no es un comando de git?


108

Al intentar obtener un antiguo volcado svn de un proyecto bajo control de git, me encontré con un problema interesante. Cada vez que ejecuto git svn, aparece un error que dice que no es un comando de git, pero hay documentación que puedo usar git help. ¿Hay algún problema con mi instalación o simplemente me falta algo aquí?

Editar: probablemente también debería mencionar que estoy ejecutando msysGit versión 1.6.1.9.g97c34 en Windows XP, y el error que obtengo es:

$ git svn 
git: 'svn' no es un
git-command. Consulte 'git --help'.

¿Te refieres a uno de estos?
        fsck
        espectáculo

Respuestas:


16

No estoy seguro de que git svn haya funcionado alguna vez con la distribución reciente de Git Windows (publicación 1.5.6).

Se han informado muchos problemas antes, por lo que es git svnposible que no se incluyan en las versiones actuales de msysGit.

Otro desarrollo activo actual de "Git en Windows", mingw.git , indica en su README que svn no funciona.

Este hilo de Msysgit sugiere que git svn puede reintegrarse en algunos puntos, pero el progreso aún es lento.


Actualización: de MSysGit1.6.2 (principios de marzo de 2009), git-svnfunciona de nuevo . Vea esta pregunta SO .


Actualización: con un Git moderno (2017) para Windows 2.x , git svnya está incluido.
No es necesario sudo apt-get install git-svn, lo cual solo sería posible en una sesión de shell WSL (Subsistema de Windows para Linux) de todos modos.


git svn ciertamente está incluido con Git ahora en Windows :)
Tod Thomson

1
@TodThomson Estoy de acuerdo, y eso es lo que dice mi actualización de marzo de 2009.
VonC

2
para usuarios de Windows 10sudo apt-get install git-svn
behelit

266

Solo revisé mi caja de ubuntu recién instalada y no estaba instalada ni siquiera con git-core instalado. Un simple:

sudo apt-get install git-svn

o su equivalente de distribución debería arreglarlo.


32

En Ubuntu:

sudo add-apt-repository ppa:git-core/ppa
apt-get update
sudo apt-get install git-svn

4
El ppa es opcional. git-svn está incluido en el repositorio estándar.
jgomo3

Pregunta anterior, pero aún cuando git-svn está instalado en Ubuntu, creo que debería agregarse que tenemos que usar git svn y no git-svn
nsaura

Necesitaba la parte ppa en Ubuntu 16.
Sridhar Sarnobat

apt-get updatenecesidades sudotambién. Intenté actualizar la respuesta, pero como la edición tiene menos de 6 caracteres, SO no me permite hacerlo
Pau Fracés

6

En mi sistema he tenido este problema:

$ 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.

porque no tengo instalados los enlaces de Perl de Subversion. Intente instalarlos y ejecutar el comando nuevamente.


3
También he visto esto con los enlaces de Perl instalados en una ubicación diferente a la que esperaba Git; corregido con un enlace simbólico.
Paul

6

Para la posteridad: en CentOS 7, simplemente ejecute sudo yum install git-svn.


4

Tuve el mismo error en Cygwin 1.7. Se resolvió instalando el paquete git-svn con la configuración de Cygwin.



3

Versión de MacPorts:

port install git +svn

(Nota: es probable que port deactivate gitprimero lo necesite )


2

Tuve un problema similar en RHEL6, es decir,

No se puede localizar Git / SVN.pm en @INC (@INC contiene: / usr / local / share / perl5 / usr / local / lib64 / perl5 / usr / lib64 / perl5 / vendor_perl / usr / share / perl5 / vendor_perl / usr / lib64 / perl5 / usr / share / perl5.) en / usr / local / libexec / git-core / git-svn línea 25.

Mi solución:

sudo yum install subversion-perl
chmod 755  /usr/local/share/perl5/ (and sub dirs, as they were only readable by root)

Este era exactamente mi problema. El /usr/local/share/perl5directorio y el contenido necesitaban esos permisos. ¡Gracias!
Andrew Kirna

2

No estaba instalado en mi nueva instalación de Ubuntu en WSL -

sudo apt install git-svn

lo ordenó:

❯ git svn
git-svn - bidirectional operations between a single Subversion tree and git
...

1

Si git-svn no es parte de mSysGit, recomiendo usar un pequeño servidor UNIX para alojar su repositorio de puerta de enlace que clona su repositorio svn, y luego clonar ese repositorio en su máquina Windows. Este es el enfoque que estoy usando para interactuar con CVS desde git.



0

En Fedora tuve que instalarlo con

sudo dnf install -y git-svn
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.