Primero descargar la ultima versión de collabnet para Windows desde la siguiente URL http://www.open.collab.net/downloads/subversion/ necesitaran registrarse pero el registro es rápido, después de todo no hay mejor opción que bajarse software del proveedor oficial.
En la instalación la mayoría de cosas son siguiente y siguiente, destacando la carpeta raíz para los repositorio por defecto "C:/svn_repository" aquí se crearan los repositorios esta carpeta es modificable después en el archivo de configuracion de apache "httpd.conf"
Una vez instalado y corriendo
1)Crear un repositorio con el siguiente comando
svnadmin create C:/svn_ repository/repositorio1
la url q apache asigna a este repositorio es http:/localhost/svn/repositoriofíjense q es localhost/ sin el puerto asumiendo que pusieron el puerto 80.
Porque svn si la carpeta se llama svn_repository la explicación esta en el archivo "httpd.conf" ubicado en
C:\Archivos de programa\CollabNet\Subversion Server\httpd\conf
Al final del archivo
Tendrá este contenido por defecto:
DAV svn
SVNParentPath C:\svn_repository
Y le añade el prefijo svn es decir C:\svn_repository es equivalente a http://localhost/svn por consiguiente http://localhost/svn/repositorio1 es equivalente a C:\svn_repository\repositorio1
2)Configurar usuarios ( autentificación )
Modificar el archivo httpd.conf ubicado en C:\Archivos de programa\CollabNet\Subversion Server\httpd\conf
Reemplace lo siguiente :
<Location /svn>
DAV svn
SVNParentPath C:\svn_repository<Location /svn>
DAV svn
SVNParentPath C:\svn_repository
# Autenticación básica.
AuthType Basic
AuthName "Repositorio Subversion"
AuthUserFile D:/usuarios.txt
#-----------------------------------------------------------
#Descomentar lo siguiente si quieren que los demas vean su proyecto,
#lo bajen pero para modificarlo necesiten identificarse
#<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require valid-user
#</LimitExcept>
#-----------------------------------------------------------
#Lo siguiente bloquea el acceso a lectura y escritura de
#usuarios no identificados
Require valid-user
#-----------------------------------------------------------
</Location>
Una alternativa a usar SVNParentPath es usar SVNPath con la diferencia que:
SVNPath : es para un solo repositorio
SVNParentPath : es para varios repositorios
3) Crear un usuario
Para crear un usuario hay que entrar a consola ( inicio /ejecutar /escribir cmd (enter)
Ubicarse en la carpeta bien de Collabnet :
cd C:\Archivos de programa\CollabNet\Subversion Server\httpd\bin
Y crear un usuario con el siguiente comando:htpasswd -bc d:\usuarios.txt <usuario> <contraseña>
donde en el -bc: la b es para crear el archivo y la c es para crear el usuario ( si no se especifica la contraseña se le pedirá que la ingrese dos veces y se visualizara con ***)para ingrear el segundo usuario seria:
htpasswd -m d:\usuarios.txt <usuario>
Un ejemplo
C:\Archivos de programa\CollabNet\Subversion Server\httpd\bin>htpasswd -bc d:\usuarios.txt erik pass
Automatically using MD5 format.
Adding password for user erik
Automatically using MD5 format.
Adding password for user erik
Con esto ya podrán acceder desde eclipse al repositorio con la siguiente url http://127.0.0.1/svn/repositorio1 y subir un proyecto o hacerlo manualmente desde consola.
4) Configurando grupos de usuarios y permisos por usuario y por grupo
Lo siguiente sera agregar un archivo para configurar grupos y premisos, por ejemplo edite el archivo de repositorio1 aunque puede estar donde se desee y tener cualquier otro nombre y extensión
C:/svn_ repository/repositorio1/authz.conf
[groups]
administradores= erik
otro= prueba
[/]
@administradores = rw
prueba= r
- El grupo "administradores" tendrá los permisos r= lectura (read) y w = escritura (write)
- El usuario "prueba" tendrá el permiso de solo lectura.
Todo esto sobre la raiz "[ / ]" es decir todo el subarbol de carpetas que esten debajo de la raiz /, en nuestro caso cualquier carpeta que este debajo de repositorio1.
También se puede añadir configuraciones para una carpeta especifica, ejemplo:
[/trunk]
@otro= rw
[/branch]
prueba = rw
Observación: cualquier otro usuario no tendrá ningún permiso
Finalmente falta enlazar este archivo de permisos con el repositorio, para esto editamos el archivo "httpd.conf" ubicado en
C:\Archivos de programa\CollabNet\Subversion Server\httpd\conf
Agregamos debajo de AuthUserFile :
AuthzSVNAccessFile C:/svn_repository/repositorio1/conf/authz.conf
Quedaria asi:
<Location /svn>
DAV svn
SVNParentPath C:\svn_repository
# Autenticación básica.
AuthType Basic
AuthName "Repositorio Subversion"
AuthUserFile D:/usuarios.txt
AuthzSVNAccessFile C:/svn_repository/repositorio1/conf/authz.conf
#-----------------------------------------------------------
#Descomentar lo siguiente si quieren que los demas vean su proyecto,
#lo bajen pero para modificarlo necesiten identificarse
#<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require valid-user
#</LimitExcept>
#-----------------------------------------------------------
#Lo siguiente bloquea el acceso a lectura y escritura de
#usuarios no identificados
Require valid-user
#-----------------------------------------------------------
</Location>
No hay comentarios:
Publicar un comentario