Jul 28

Cómo instalar subversion en windows

Tag: HerramientasManuel Jesús Recena Soto @ 12:09

Para los interesados en instalar y configurar subversion como servidor a través de Apache Web Server sobre una plataforma Microsoft Windows, quizás las siguientes instrucciones ayuden. La instalación se ha realizado sobre Microsoft Windows Vista, con Apache Web Server 2.2.4 y subversion 1.4.4. En un post anterior os comentaba que había configurado un entorno de desarrollo para PHP con opciones de profiling. Pues bien, aprovechando que ya tenía instalado WAMP 1.7.1, he usado el Apache Web Server (2.2.4) que contiene este paquete para montar subversion. Suponiendo que ya se dispone de un Apache Web Server 2.2.x:

  1. Descargar subversion 1.4.4 y descomprimirlo
  2. Copiar los archivos mod_authz_svn.so y mod_dav_svn.so , que se encuentra en svn-win32-1.4.4/bin, en APACHE_INSTALL_DIR/modules
  3. Copiar los archivos intl3_svn.dll y libdb44.dll, que se encuentra en svn-win32-1.4.4/bin, en APACHE_INSTALL_DIR/bin
  4. Añadir las siguientes líneas (en la sección donde está la carga de librerías) al archivo APACHE_INSTALL_DIR/conf/httpd.conf para cargar las correspondientes librerias:
    1. LoadModule dav_svn_module modules/mod_dav_svn.so
    2. LoadModule authz_svn_module modules/mod_authz_svn.so
    3. LoadModule dav_module modules/mod_dav.so (es probable que exista, simplemente hay que asegurarse de que no esté comentada)
    4. LoadModule dav_fs_module modules/mod_dav_fs.so (es probable que exista, simplemente hay que asegurarse de que no esté comentada)
  5. Añadir la siguiente línea (al final) al archivo APACHE_INSTALL_DIR/conf/httpd.conf para cargar la configuración de subversion:
    1. Include “APACHE_INSTALL_DIR/conf/extra/httpd-subversion.conf”
  6. Creamos el archivo APACHE_INSTALL_DIR/conf/extra/httpd-subversion.conf con la siguiente configuración (es sólo un ejemplo):
    1. <Location /repos>
      DAV svn
      SVNParentPath “C:/tools/wamp/tmp/svn”
      AuthzSVNAccessFile “C:/tools/wamp/Apache2/conf/access-policy/svn-groups.conf”
      AuthType Basic
      AuthName “Subversion repository”
      Require valid-user
      AuthUserFile “C:/tools/wamp/Apache2/conf/access-policy/svn-users.conf”
      </Location>
    2. Cuidado con las rutas! eso es sólo un ejemplo. Básicamente se indica donde van a estar nuestros repositorios de subversion, el archivo con los grupos y usuario de subversion
  7. Ahora tenemos que crear los archivos svn-groups.conf y svn-users.conf. Para el primero de ellos tenemos:
    1. [groups]
      test-group: recena

      [test:/]
      @test-group:rw

    2. Definición de grupos y a continuación, nombre del repositorio (que tendremos que crearlo) y permisos del grupo sobre el raiz del repositorio.
  8. Para crear un usuario, hacemos uso de la utilidad htpasswd que nos proporciona Apache.
  9. Para crear el repositorio hacemos uso de la utilidad svnadmin que proporciona subversion

Para cualquier duda o sugerencia, un comentario.

21 Responses to “Cómo instalar subversion en windows”

  1. Anonymous says:

    Muchas gracias. Muy clarita la explicación ;)

  2. @lexei says:

    Muy buen tutorial un millón de gracias, pero me queda una duda y es respecto al archivo *svn-users.con*, ¿cual debe ser la estructura de este archivo?.

    Gracias de antemano,
    Sl2

  3. Manuel Jesús Recena Soto says:

    Hola:

    Si lo estás instalando en windows, debes hacer uso de la utilidad htpasswd.exe:

    htpasswd.exe svn-users.conf miusuario

    Si necesitas algo más, no dudes en escribir.

    Un saludo

  4. ricardo says:

    Tampoco entendí como es la estructura de “svn-users.conf”

    como usar
    htpasswd.exe svn-users.conf miusuario ??

    Saludos
    Gracias

  5. Manuel J. Recena Soto says:

    Hola Ricardo:

    La utilidad htpasswd.exe que se distribuye con Apache Web Server es muy sencilla de utilizar.

    http://httpd.apache.org/docs/1.3/programs/htpasswd.html

  6. Edinson Guzman says:

    Hola, he seguido todos los pasos como los indicas, he creado los directorios necesarios y aun no logro que el apache inicie, existe alguna forma de saber que esta fallando.
    Volvere a hacer todo paso a paso, por cierto utilizo el wamp 1.7.2

  7. Manuel J. Recena Soto says:

    Hola Edinson:

    Te recomiendo que mires los logs de Apache Web Server para comprobar que se han cargado correctamente los módulos.

    Un compañero del trabajo ha seguido las notas y no ha tenido ningún problema. Revisa los pasos y si sigues teniendo problemas, me envías un correo con los archivos de configuración.

    Un saludo

  8. santiago says:

    Como estas? muy bueno el tutorial…pero segui todos los pasos y no arranca mas el apache…no me queda muy claro lo ultimo lo de los grupos y usuarios..si podes detallarlo paso por paso o con un ejemplo estaria muy bueno y tambien si tenes tiempo explicar como organizar los directorios .. donde poner el suversion y el repositorio..desde ya muchisimas gracias

  9. Manuel J. Recena Soto says:

    Hola Santiago:

    ¿Qué mensajes de error obtienes?
    He puesto todos y cada uno de lo pases que seguí. La única parte menos detallada en la que corresponde con la creación de los archivos svn-users.conf y svn-groups.conf, sin embargo, se dice cómo crearlos.

    El directorio para almacenar tus repositorios lo puedes poner donde desees, simplemente tienes que tener cuidado con la directiva SVNParentPath.

    Un saludo

  10. Luis says:

    hola que tal, esta muy bueno el tutorial pero tengo un pequeño problema al cargar los modulos.. segui paso a paso todo el tuto pero al momento de de subir nuevamente el apache no sube y me da error en las librerias q aumente.. no las sube d ninguna forma, no las reconoce.. no se q me puede estar faltando..

    uso el apache apache 2.2.4 y subcontrol 1.4

    gracias y saludos
    Luis

  11. Luis says:

    Este es el error exacto que me sale:

    httpd.exe: Syntax error on line 115 of C:/Archivos de programa/Apache Software F
    oundation/Apache2.2/conf/httpd.conf: API module structure `dav_svn_module’ in fi
    le C:/Archivos de programa/Apache Software Foundation/Apache2.2/modules/mod_dav_
    svn.so is garbled - perhaps this is not an Apache module DSO?

    Saludos
    Luis

  12. Manuel Jesús Recena Soto says:

    Hola Luis:

    ¿Has usado las mismas versiones que indico en el post?

    Un saludo

  13. Palacios says:

    Hola

    Tengo un apache apache_2.0.61-win32-x86-openssl-0.9.7m.msi y un subversion svn-1.4.5-setup.exe

    Me sale un mensaje cada vez que deseo iniciar el servicio Apache

    Que hay un error de sintaxis en el archivo httpd.conf
    Unknow DAV Provider: snv

    Cualquier Informacion de antemano se los agradezco

    Saludos

  14. Manuel Jesús Recena Soto says:

    Hola:

    Revisa la configuración porque debes tener algún error sintáctico. Si me envías los archivos de configuración, puedo echarles un ojo.

    Un saludo

  15. Pisistrato says:

    Saludos muy buen tutorial

    yo uso XAMPP

    trate de implementarlo y no pude.

    Alqgiein me puede ayudar.

    Gracias de antemano

  16. William Diaz Pabón says:

    Tengo Apache2.2.4, Subversion 1.4.4, Windows 2003 Server.

    Cuando se trata de subir el servicio muestra una alerta con el mensaje: the requested operation has falied.

    No muestra nada en los archivos log.

    Haciendo pruebas de margen y error detecte que son las versiones de los modulos que se copian en la carpeta modules.

    Pero yo baje la version que indican en esta pagina, que sera?

  17. Pisistrato says:

    Saludos amigo excelente tutorial

    yo tengo el siguiente bugs

    use todas la versiones que tu dices apache 2.2.6 y el svn 1.4.4
    cuando intento crear un directorio el el repositorio me da el siguiente error

    500 internal server error

    seguido de unos caracteres
    no hace nada
    me puedes ayudar

  18. Luis Alberto Rivas says:

    con referecnial al error:

    httpd.exe: Syntax error on line 115 of C:/Archivos de programa/Apache Software F
    oundation/Apache2.2/conf/httpd.conf: API module structure `dav_svn_module’ in fi
    le C:/Archivos de programa/Apache Software Foundation/Apache2.2/modules/mod_dav_
    svn.so is garbled - perhaps this is not an Apache module DSO?

    El problema esta en que estas usadon los .so y .dll de la version de subversion para apache 2.0.x, yo lo solucione remplazando estos archivos por los de la version de subversion para apache 2.2.x y segui los mismo pasos de esta gui y funciono a la perfeción, espero les sirva de ayuda a los que se les presente el mencionado error.

    Saludos

  19. Wilmar says:

    De casualidad no hay un manual para apeche 2.0.50
    svn-win32-1.4.6. espero me ayuden………….

  20. Juan David Cardona says:

    Muchas muchas gracias!!!
    efectivamente, se debe instalar el add-on de Apache 2.2.4 porque el WAMP 1.7.1 viene con Apache 2.0.X y entonces los módulos del subversion no le funcionan.

    El Add-on lo pueden descargar de:
    http://www.wampserver.com/en/addons_apache.php

    Cordialmente,
    Juan David.

  21. Juan Carlos says:

    Muy bueno esto gracias !! aprendi mucho a conf el apache!! =)

Leave a Reply