Índex:
- Introducció
- Requisits
- Sol·lució adoptada
- Instal·lació
- Configuració
- Notes d'ús
- Resum de comandes comunes
- Cicle de treball típic
- Llegenda d'indicadors
- Enllaços
- Manuals i documentació
- Front-en gràfics
Introducció:
En primer lloc diré que tota la documentació necessària, tant per posar en marxa un repositori subversion, com per fer-lo servir com a client, la podeu trobar al Manual de Subversion. Aquest document només és una guia ràpida per montar i utilitzar la configuració que jo necessitava i que pas a descriure tot seguit:
Requisits:
- Poder albergar varis projectes i crear-ne de nous sense gaïre complicació. Però no cal que els usuaris puguin fer-ho. Basta amb els administradors.
- Poder accedir, tant per lectura com per escriptura, als repositoris des de la xarxa (LAN i/o Internet).
- Poder restringir l'accés per lectura i/o escriptura en els accessos per xarxa als repositoris o a determinats subdirectoris d'aquests en funció de l'usuari. Els usuaris no accediràn localment des del servidor perquè no hi tenen compte. Tampoc és necessari que hi hagi usuaris privilegiats que puguin atorgar/retirar permisos. La gestió dels privilegis la poden fer perfèctament els administradors del servidor.
Sol·lució adoptada:
Per cobrir els objectíus marcats, hem optat per una instalació senzilla de subversion i accés remot via http/web-dav (dav_svn_module) amb el mòdul web-dav-svn per Apache2*. Necessitam Apache2 perque web-dav-svn no està disponible per Apache 1.
L'autenticació la resolem amb el sistema d'autenticació natíu d'Apache i el control de restriccións el fem mitjançant el mòdul authz_svn_module (tots dos mòduls al paquet libapache2-svn en Debian) que ens permet, mitjançant un senzill fitxer de text, atorngar o restringir drets de lectura i/o escriptura als diferents usuaris sobre directoris concrets dels repositoris.
En aquest plantejament senzill, tenim únicament tres elements en joc, que podem ubicar al lloc que considerem més oportú:
- Els repositoris.
- El fitxer amb els comptes d'usuari vàlids (nom d'usuari i clau d'accés)
- El fitxer amb les definicions de permisos d'accés.
Per simplicitat, i per major facilitat a l'hora de fer un backup global, els repositoris s'han agrupat tots baix un únic directori. En el nostre cas en un disc habilitat 'ad-hoc' per albergar-los que hem montat a /var/svn.
Donat que hi pot arribar a haver un número considerable d'usuaris del repositori, hem decidit ubicar el fitxer de permisos dins el mateix disc per tal de fer backup de tot de cop. Així els repositoris, finalment, els hem posat baix /var/svn/repos i el fitxer de permisos l'hem ubicat a /var/svn/access.
El fitxer amb els comptes d'usuari, en contenir informació més sensible i, en no ser vital aquesta (en cas de desastre es podrien tornar a crear un per un sense que suposàs un trauma greu) hem preferit deixar-lo a /etc (/etc/svn-auth-file). Però això és totalment opcional.
Per a la resta de l'article suposarem la configuració exposada aquí. Però fàcilment es poden canviar les ubicacions tant dels repositoris com dels fitxers, si així es creu convenient. |