Por Federico Pereira, AXR Global Sistemas de Informática
Partimos de que tienes Subversion instalado. (sino apt-get install subversion, o como lo hagas en tu distro; aunque hay gente que prefiere compilarlo.)
Arranca el demonio del servidor como un usuario no root, así que create una cuenta para dicho demonio.
$ groupadd -g 99 svnd $ mkdir /home/svn/ $ useradd svnd -d /home/svn/ -g svnd -s /bin/false -m -k /dev/null -c 'svnserver' -u 99
Crear un nuevo repostorio, en el servidor (puedes crear tantos como quieras) por ejemplo:
$ sudo svnadmin create /home/svn/proyecto
Arrancar el servidor en modo demonio:
De este modo, con la opción “-d” se activa el demonio del servidor de subversión y mediante la opción “-r”, para que no permita salir /home/svn/, que es donde se guardados todos los repositorios. Además con esto haces que los clientes, no tengan que escribir el path completo, para el caso seria:
svn checkout svn://host.example.com/proyecto
Si no utilizas “-r” tendrían que poner que indicar que el repositorio es /home/svn/prueba; además de las consideraciones de seguridad que se deducen.
como sudo o root
$ svnserve -d -r /home/svn/ Nota: Asegurate de tener accesible el puerto 3690 (TCP y UDP).
Por cada repositorio que se cree hay una configuración básica de atentificación. Dentro del repositorio hay una carpeta con el nombre /conf y tiene por ejemplo esto:
svnserve.conf
[general] anon-access = none auth-access = write password-db = passwd
Esto seria para: anonimos sin lectura ni escritura. Autentificados lectura y escritura. Lo que ves detras de “password-db”, es el nombre de fichero de contraseñas.
passwd
[users] admin=slfkalkfla pepito=5agachatequetela