Qualche giorno fa ho illustrato le caratteristiche di SVN, un sistema collaborativo per agevolare lo sviluppo.
Spostare un repository SVN, una volta creato, è abbastanza semplice a patto che abbiate accesso all'amministrazione del repository. Ancora meglio se avete a disposizione un accesso shell che vi consentirà di digitare manualmente i pochi comandi necessari al completamento dell'operazione.
La procedura seguente è testata per il seguente ambiente:
- SVN server installato su sistema operativo Unix/Linux
- Accesso via shell (SSH) all'amministrazione dei repository
Come prima cosa connettetevi al vostro server via shell.
Accedete alla directory che contiene il vostro repository e digitate il seguente comando
svnadmin dump /path/repository > backup.dmp
per eseguire una esportazione completa del database.
Esempio: Immaginando di voler esportare in /home/user/wapi.dmp
il repository SVN chiamato wapi
che si trova in /home/user/svn/wapi/
, digitate i seguenti comandi
cd /home/user/ svnadmin dump svn/wapi > wapi.dmp
A questo punto il processo di esportazione comincia. Via shell cominceranno ad apparire il numero di revisioni esportate.
* Dumped revision 0. * Dumped revision 1. * Dumped revision 2. * Dumped revision 3. * Dumped revision 4. * Dumped revision 5. * Dumped revision 6. ...
L'esportazione è avvenuta con successo. Se desiderate comprimere il file per agevolare lo spostamento, potete ricorrere al comando tar
.
tar -zcf wapi.tgz wapi.dmp
Ora spostatevi nella cartella / server nel quale desiderate importare il repository SVN. Se non è ancora disponibile create il nuovo repository attraverso le opzioni messe a disposizione dal vostro provider o via shell.
Via shell eseguite
svnadmin create nomerepository
Ora importate il repository prima eportato. Non dimenticate di decomprimere il file nel caso lo abbiate salvato in formato tgz. Per decomprimere il file eseguite
tar -zxf wapi.tgz
Mentre per importare il file
svnadmin load /path/nuovorepository < wapi.dmp
Riassumendo, a parte i comandi a corredo, per esportare un repository SVN eseguite
svnadmin dump /path/repository > nomefile.dmp
mentre per importarlo
svnadmin load /path/nuovorepository < nomefile.dmp