SVN e WebSVN su DreamHost
12 Gennaio 2009
Pur essendo la procedura piuttosto banale, preferisco appuntarmi i passaggi a futura memoria (magari viene utile anche ad altri) 😉
Passo 1: il sottodominio
Per prima cosa è consigliabile crearsi un sottodominio nel pannello di controllo di Dreamhost (svn.dominio.tld) attraverso la sezione Domains->Manage Domains:
- fare clic sul pulsante Add New Domain/Sub-Domain;
- inserire il nome del sottodominio (svn.dominio.tld);
- creare il dominio (fully hosted) associandolo all’utente desiderato.
Passo 2: installare SVN
Nella sezione Goodies selezionare Subversion: in questa pagina è possibile creare un nuovo progetto, associarlo al relativo dominio, impostare utenti e password e stabilire se si tratta di un progetto pubblico o privato (in entrambi i casi il commit sarà comunque riservato agli utenti specificati).
A questo punto il progetto è già accessibile all’indirizzo svn.dominio.tld/nomeprogetto, ma sarà possibile solo navigare tra i file dell’ultima revisione.
Passo 3: installare WebSVN
Scaricare il file zip o tar.gz dal sito di WebSVN e caricare i file nello spazio FTP collegato a svn.dominio.tld. Se ancora non l’avete capito, la maniera migliore per fare questo tipo di operazioni su DreamHost è quella di caricare il file zip (o meglio ancora scaricarlo direttamente con wget, sfruttando la banda disponibile) e decomprimerlo attraverso una sessione SSH. Se usate Linux o Mac OS X vi basta digitare “ssh svn.dominio.tld -l utente” in un terminale, se usate Windows potete usare PuTTy.
Esempio pratico:
[nome_server]$ wget http://websvn.tigris.org/files/documents/1380/44450/websvn-2.1.0.zip [nome_server]$ unzip websvn-2.1.0.zip [nome_server]$ cd websvn-2.1.0 [nome_server]$ mv * ../ [nome_server]$ cd .. [nome_server]$ rm websvn-2.1.0.zip [nome_server]$ rmdir websvn-2.1.0/
Per configurare WebSVN basta rinominare il file include/distconfig.php in include/config.php e aggiungere le seguenti righe (sostituendo “nomeutente” con il vero username):
$config->setSVNCommandPath('/usr/bin/'); $config->setDiffPath('/usr/bin/'); $config->parentPath('/home/nomeutente/svn/');
Passo 4: .htaccess
Personalmente ho scelto di bloccare l’accesso a svn.dominio.tld con .htaccess. Ancora una volta, la strada più semplice è quella della connessione SSH.
Posizionarsi nella cartella principale dell’utente (prima di svn.dominio.tld) e digitare
htpasswd -c .htpasswd user
Verrà richiesta una password per l’utente “user”. In questo modo avete creato nella cartella dell’utente – e non raggiungibile via web – un file .htpasswd da utilizzare con .htaccess (in alternativa potete usare uno dei tanti generatori online).
A questo punto bisogna creare un file .htaccess nella cartella svn.dominio.tld con le seguenti righe (come sopra, sostituire “nomeutente” con il vero username)
AuthUserFile /home/nomeutente/.htpasswd AuthType Basic AuthName "Repository SVN" Require valid-user
Passo 5: usare il progetto
Per quanto mi riguarda (e per le mie esigenze), la strada più semplice è utilizzare un plugin che si integra con il sistema operativo (a livello di gestione risorse o finder): TortoiseSVN nel caso di Windows, scplugin nel caso di Mac OS X.
4 commenti/trackback a “SVN e WebSVN su DreamHost”
Trackback e pingback
- Best of Week #3 | Gioxx's Wall
[...] SVN e WebSVN su DreamHost [...] - pseudotecnico:blog » VCS (controllo versione) e affini
[...] con Mozilla, la mia prima scelta è stata Subversion (SVN): inizialmente ho utilizzato il servizio SVN su DreamHost, poi…
Non è possibile inserire nuovi commenti. I commenti vengono disattivati automaticamente dopo 60 giorni.
12 Gennaio 2009 alle 13:40
Io uso l’svn di dreamhost su aptana tramite subversive e va che è una bomba!
12 Gennaio 2009 alle 14:48
Usando sistemi (Windows Vista e OS X) e software completamente diversi (Delphi, DreamWeaver, Textmate, Photoshop), alla fine mi è più comodo usare la gestione risorse.
Peraltro ho appena verificato che WebSVN evidenzia perfettamente anche il pascal di Delphi 🙂