Creación del repositorio
Como root creamos un directorio donde estara el positorio, por ejemplo:# mkdir /var/svn-reposCreamos el repositorio propiamente dicho:
# svnadmin create --fs-type fsfs /var/svn-repos/test_repo
Ajustar permisos del repositorio
Para que el repositorio pueda ser usado por otros usuarios tenemos que ajustar algunos permisos.Primero creamos un grupo donde agregaremos a todos aquellos usuarios que van a poder acceder al repositorio. Por ejemplo:
# addgroup developmentAgregamos los usuarios al grupo creado:
# adduser juan developmentAjustamos los permisos del repositorio:
# adduser luis development
# chown -R www-data:development /var/svn-repos/*
# chmod -R 775 /var/svn-repos/*
Accediendo al repositorio
Ahora podemos acceder al repositorio a través de ssh:$ svn co svn+ssh://hostname/var/svn-repos/test_repoPara evitar que debamos responder repetidas veces la password conviene utilizar ssh-agent con una clave privada.
Si queremos acceder al repositorio por http primero tenemos que crear una base de datos con los usuarios permitidos:
# htpasswd -c -m /etc/apache2/dav_svn.passwd juanLa primera linea crea el archivo, la siguiente sirve para agregar los demas usuarios.
# htpasswd -m /etc/apache2/dav_svn.passwd luis
Ahora modificamos el archivo /etc/apache2/mods-available/dav_svn.conf agregando:
<Location /test_repo>Recargando la configuracion de apache con # invoke-rc.d apache2 reload, podemos acceder al repositorio como usuario:
DAV svn
SVNPath /var/svn-repos/test_repo
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
$ svn co http://hostname/test_repoTambién podremos acceder desde un navegador, con nuestro usuario y password, al repositorio desde la dirección http://hostname/test_repo.
Instalando ViewVC
La página de acceso por web es bastante simple, si queremos algo con más funcionalidad podemos instalar ViewVC.Editamos el archivo /etc/viewvc/viewvc.conf. Dentro de la sección [general] agregamos una linea así:
svn_roots = test_repo : /var/svn-repos/test_repoOpcionalmente: podemos comentar la linea que comienza con cvs_roots, a menos que hayamos instalado un repositorio Cvs. Tambien podemos habilitar la opción root_as_url_component.
Creamos un archivo /etc/viewvc/apache.conf con la configuración para apache. Este archivo contiene la siguiente linea:
ScriptAlias /viewvc /usr/lib/cgi-bin/viewvc.cgi
Agregamos este archivo al directorio con las configuraciones de apache y recargamos:
# ln -sf /etc/viewvc/apache.conf /etc/apache/conf.d/viewvc.confUna vez terminado los pasos anteriores tenemos un interfaz web más bonita que se puede acceder desde: http://hostname/viewvc/test_repo.
# invoke-rc.d apache2 reload
