En esta segunda entrega vamos a ver cómo usar un servidor SVN en MS Windows y cómo conectarse a él desde otra máquina.
En primer lugar debemos arrancar el servidor SVN:
svnserve -d -r c:\\svn
Ahora vamos a otra máquina e intentamos conectarnos al servidor SVN. Para eso creamos una carpeta de trabajo (por ejemplo c:\mis proyecto\base_gamma o, en Linux, /home/gorka/proyectos/base_gamma) y nos bajamos una copia del proyecto. Supongamos que el servidor tiene la IP 192.168.1.13 (esta tienes que sustituirla por la IP o el dominio de tu servidor):
svn co svn://192.168.1.13/base_gamma/trunk .
Se puede apreciar que la única diferencia entre trabajar con el servidor en el mismo PC o trabajar remotamente es que en lugar de conectarnos a:
file:///c:/svn/
nos conectamos usando:
svn://192.168.1.13/
Arrancar el servidor automáticamente
Para automatizar el arranque del servidor lo que he hecho ha sido crear un archivo ejecutable llamado arrancar.bat en la carpeta de repositorios (en este caso c:\svn) con el comando que hemos usado antes:
svnserve -d -r c:\\svn
y luego lo he llevado como acceso directo a Inicio->Programas->Inicio.
Existe también un servicio llamado SVNService que no he probado así que no puedo deciros cómo funciona, pero hay información en Google sobre el tema.
Usando contraseñas
Vamos a configurar el servidor de modo que se necesite una clave para poder acceder a él.
Comenzamos por editar el fichero svnserve.conf que está en el directorio conf de nuestro repositorio (en este caso c:\svn). Lo editamos y descomentamos las líneas (descomentar = quitar las # del principio de la línea):
password-db = userfile
realm = gamma
userfile es el fichero que contiene los datos de autentificación de los usuarios y realm es una etiqueta que definimos nosotros, en este caso gamma.
Si te fijas estas líneas están dentro de la sección [general] del fichero.
Guardamos el fichero, lo cerramos y abrimos userfile que está en el mismo directorio. Vamos a crear al usario ross y le vamos a crear como contraseña hulkmalo.:
[users]
ross = hulkmalo
Guardamos el fichero y lo cerramos.
Reiniciamos el servidor y ya debería funcionarnos correctamente.
Para conectarnos usamos:
svn co svn://192.168.1.13/base_gamma/trunk . ross hulkmalo
En la próxima entrega voy a hablar de algunos clientes de SVN como Tortoise SVN y RapidSVN.