>
MENU
e_att.jpg

Personalizzare Fedora 8 (Parte I)

op9.jpg

Smartphone Linux: telefonini del tutto personalizzabili (1/2)

15 novembre 2007 Visualizzazioni: 514 Focus

Realizzazione e configurazione di un server repository SVN (2/6)

Abbiamo fin’ora visto come creare un file repository locale. Questo file però può essere visto solo all’interno della Lan stessa e non ovviamente da utenti su reti diverse.


Per ovviare a questa problematica è possibile/necessario esportare il nostro repository attraverso il protocollo http/https. Per mettere in rete il nostro repository abbiamo bisogno principalemente di 3 componenti presenti in 2 pacchetti.

In primis abbiamo bisogno ovviamente di un server web (nel nostro caso Apache httpd 2.0), del modulo mod_dav che è presente con esso e del modulo mod_dav_svn disponibile con il pacchetto subversion. Accertarsi dunque di avere all’interno del file di configurazione di subversion il caricamento del modulo mod_dav_svn e quindi della riga di codice seguente.

In Fedora il file “subversion.conf” è presente sotto la directory “/etc/httpd/conf.d/”:

LoadModule dav_svn_module modules/mod_dav_svn.so

Allo stesso modo verificare che all’interno del file “httpd.conf” (in Fedora presente nella directory “/etc/httpd/conf/”) sia presente il caricamento del modulo mod_dav.

LoadModule dav_module modules/mod_dav.so.

N.B Diversi manuali consigliano di caricare entrambi i moduli in quest’ultimo file di configurazione. Ciò è ovviamente opzionale in quanto se tale modulo verrà inserito in entrambi i file di configurazione al momento dello start del server comparirà il seguente messaggio di warning:

Starting httpd: [Mon Aug 27 15:23:54 2007] [warn] module dav_svn_module is already loaded, skipping [ OK ]

Una volta caricati i moduli sopraindicati occorre inserire, sempre all’interno del file di configurazione “http.conf”, il riferimento (location) del repository svn.

Per far ciò occorre inserire il seguente:

XML DAV svn SVNParentPath /srv/svn/repository/ AuthType Basic AuthName “Subversion repository” AuthUserFile /srv/svn-auth-file

Salviamo il file di configurazione e riavviamo il server http con il comando:

# service httpd restart

A questo punto per testare la nostra nuova configurazione apriamo il browser e digitiamo l’url http://localhost/svn/mio_repository.

N.B “localhost” viene utilizzato in fase di test per raggiungere il servizio (anche se sulla stessa macchina) httpd. Per richiamare il repository da altra macchina sarà necessario indicarne l’indirizzo IP del server dove risiede il repository od eventuale alias. Esempio: http://10.0.0.3/svn/mio_repository/

Più repository possono essere visti attraverso httpd, l’importante è che questi risiedano nel ParentPath indicato nella riga XML SVNParentPath, nel nostro caso “/srv/svn/repository/”. Ora è possibile eseguire la nostra copia_locale del progetto anche su macchina remota digitando l’analogo comando di checkout:

# svn checkout http://Ip_Server_Repository/svn/mio_repository /home/copia_locale_mio_repository

Nel prossimo numero inizieremo a scoprire quali sono i comandi principali per la gestione del repository da riga di comando.

LEZIONI PRECEDENTI:
13 Novembre 2007: Realizzazione e configurazione di un server repository SVN (1/6)

di Diego Dagassolemi - TuxJournal.net

twittergoogle_pluslinkedinmail
  • http://informatix.netsons.org informatix

    Il link alla prima parte della guida linka ad un corso su ruby

  • http://www.tuxjournal.net Dagassolemi Diego

    Grazie per la segnalazione.
    Provvederemo subito.
    Inoltre invito chi avesse dubbi o volesse far domande a farsi avanti.
    Cercherò di rispondere quanto prima.

    Ciao
    Diego Dagassolemi

  • peppux

    Buongiorno,

    prima di tutto vorrei fare i complimenti al Sr. Diego Dagassolemi che ha avuto questa splendida idea di realizzare questa guida veramente utilissima, i miei complimenti :)
    Ora passiamo al sodo…
    Non riesco a visualizzare il mio server svn via web. Invece di inserire la riga ” XML DAV svn SVNParentPath /srv/svn/repository/ AuthType Basic AuthName “Subversion repository” AuthUserFile /srv/svn-auth-file ” nel file di conf di apache, anche perchè mi dava errore all’avvio, sono andato a modificare il file di conf del mod_dav_svn, la configurazione è questa:

    DAV “svn”
    SVNPath “/home/peppux/svn_server/”
    AuthType Basic
    AuthName “Subversion repository”
    AuthUserFile /var/svn/conf/svnusers
    Require valid-user

    Però non funziona…sai darmi qualche dritta? Grazie :)