Sei sulla pagina 1di 2

Installare SVN su Ubuntu

Guida per l'installazione e la configurazione di Subversion su sistemi Ubuntu, completa di


autenticazione di base e accesso tramite web.

Per installare subversion, apri un terminale e digita il seguente comando:

sudo apt-get install subversion libapache2-svn

In questo modo verranno installati i moduli necessari: SubVersion e le librerie SVN per Apache2.
Il modulo SVN dovrebbe essere automaticamente abilitato su Apache dopo l'installazione ma, se
così non fosse, è possibile abilitarlo tramite il comando a2enmod, come descritto di seguito:

sudo a2enmod dav_svn

Il prossimo passo è la creazione del repository per subversion, che potrà ad esempio essere in /svn,
anche se potete scegliere il percorso che desiderate, in base ai vostri gusti e allo spazio disponibile.

sudo svnadmin create /svn

Quindi dovremo modificare il file di configurazione per il modulo webdav/SVN. In questo caso
verrà utilizzato l'editor gedit, ma potrete utilizzare quello che meglio preferite.

sudo gedit /etc/apache2/mods-enabled/dav_svn.conf

Il parametro Location del file di configurazione, sta ad indicare la directory in cui subversion sarà
accessibile, come nel seguente esempio:
http://www.nomesito.com/svn

<Location /svn>
La linea DAV deve essere decommentata per l'abilitazione del modulo dav (in pratica togliete il
cancelletto antecedente).

DAV svn
Il parametro SVNPath dovrebbe invece essere equivalente al percorso in cui avete creato il
repository SVN con il comando svnadmin.

SVNPath /svn
La prossima sezione permette di attivare l'autenticazione. Ricordiamo però che questa può essere
considerata soltanto una autenticazione basilare, quindi non dovrebbe essere considerata molto
sicura.
Il file che contiene le associazioni username/password verrà salvato nel percorso indicato nel
parametro AuthUserFile, che sarebbe meglio lasciare al valore di default.

Decommentate quindi le 3 seguenti righe per attivare la Basic Authentication.

AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Per creare un utente, con i relativi permessi di accesso al repository, è sufficiente digitare il
comando:

sudo htpasswd -cm /etc/apache2/dav_svn.passwd username

L'opzione -c deve essere utilizzata solamente per la creazione del primo utente, in modo che il file
venga creato.
Successivamente potrà essere sfruttata soltanto l'opzione -m, che effettua la criptazione in MD5
della password, ma che evita di ricreare il file.

Esempio

sudo htpasswd -cm /etc/apache2/dav_svn.passwd icelab


New password:
Re-type new password:
Adding password for user icelab

A questo punto assicuratevi che Apache abbia i permessi di scrittura sulla directory /svn tramite il
seguente comando:

sudo chown -R www-data:www-data /svn

Alla fine del processo di installazione ricordate di riavviare Apache:

sudo /etc/init.d/apache2 restart

Dopo il riavvio, visitando dal vostro browser (es. Firefox) l'indirizzo http://www.miosito.com/svn,
dovreste constatare con i vostri occhi che il repository permette l'accesso anonimo in sola lettura,
mentre per eseguire il commit delle modifiche verranno richiesti username e password.

Se desiderate che venga richiesto l'autorizzazione anche per l'accesso in sola lettura, basterà inserire
la seguente riga nel file di configurazione, sotto la linea del parametro AuthUserFile.

Require valid-user

Dopo questa modifica al file, riavviate apache ed avrete a disposizione un server SVN