Con esto de que empiezan las clases y demás, siempre apetece tener bien ordenados todos los ficheros que vas a usar a lo largo de la carrera, documentos, código, ejercicios, etc… Y sabiendo que es posible que necesite programas de ambos sistemas, tanto Linux como Windows, me he puesto manos a la obra y en apenas un par de horas he conseguido dejarlo todo configurado y listo para usar.
Os dejo un resumen de los pasos que he seguido para armar todo el tinglado. Recordad hacer todo esto desde vuestro usuario normal, no "root":
1. En primer lugar instalamos las aplicaciones de turno, el servidor Apache (hace falta). Para ello, abrir el gestor de paquetes que tengáis (en mi caso apt-get) e instalad los paquetes:
apache2 subversion libapache2-svn
Hasta aquí todo bien ¿no? empieza lo bueno.
2. Elegid un directorio, creadlo en el escritorio, en vuestra carpeta /home, etc… donde queráis. Ahora ejecutad el siguiente comando, para asociar la carpeta al repositorio svn:
svnadmin create /sitio/donde/tengas/la/carpeta
Una vez hecho esto, deberás meter algún fichero dentro, copiarlo, moverlo de otro sitio directamente desde tu navegador de ficheros (en mi caso nautilus), o usando el comando “import” que incorpora subversion:
svn import /ficheros/a/copiar file:///sitio/donde/tengas/la/carpeta
Quédate bien con esta ruta “file:///sitio/donde/tengas/la/carpeta”, porque se usará bastante.
3. Si necesitas introducir más archivos pero no quieres calentarte la cabeza a la hora de usar “svn import”, puedes copiarlos directamente dentro y usar el siguiente comando:
svn add –force /directorio/del/repositorio
Con este comando conseguimos que los ficheros nuevos que encuentre en el directorio y sub-directorios y agregarlos a la lista de actualización. Esta lista necesita ser “subida” al repositorio, usando el siguiente comando:
svn commit
Cuando ejecutes este comando nos aparecerá la lista de cambios que ha habido en el repositorio, a modo de log.
4. Una vez tenemos configurado nuestro repositorio en Linux, debemos poner online el servidor en nuestra red local. Ello se hace con el siguiente comando:
svnserve -d –foreground -r /directorio/del/repositorio
Ahora sacamos la IP local de la máquina (generalmente será algo parecido a 192.168.x.x)
* Extra: si queréis poner usuario/contraseña al servidor (a mi no me hace falta), editad el archivo ./conf/svnserver.conf y cambiad la siguiente línea así:
# password-db = passwd
password-db = passwd
Ahora editad el archivo ./conf/passwd y pone un usuario/contraseña por línea, de la siguiente manera:
username = password
5. Terminado esto, ahora sólo necesitamos configurar el repositorio en Windows, que se hace de manera más facilita. Utilizaremos el famoso TortoiseSVN. Los instalamos, y creamos una carpeta donde queramos. Una vez creado, la seleccionamos, y en el menú contextual pulsamos "SVN Checkout".
6. Introducimos la IP de la máquina con Linux y le damos a OK. Si todo va bien empezará a descargar todos los archivos y directorios en esa carpeta.
7. Para enviar ficheros de Windows a Linux, tan solo tendremos que poner los ficheros que queramos en la carpeta del repositorio, y en el menú contextual, pulsar "SVN Commit". Ahí dentro seleccionamos los ficheros a subir y le damos a OK. Si todo va bien, se subirá lo selecciona y nos saldrá el número de revisión del repositorio.
A partir de aquí, cada vez que queramos actualizar el repositorio, tendremos que hacerlo simultáneamente en los 2 sitios. Es decir, si subes algo desde Linux con "svn commit", al trabajar el Windows deberás hacer un "SVN Update" antes de nada, y viceversa.
P.D.: No, no adjunto imágenes, realmente no hacen falta
Si tenéis alguna duda, a los comentarios
Fuente | https://help.ubuntu.com/9.04/serverguide/C/subversion.html
TortoiseSVN | http://tortoisesvn.tigris.org/
