Sauvegarder et restaurer une base SVN

© Christian PAULUS. Document créé le 8 janvier 2011 , mis à jour le 25 janvier 2011.

Les cons ça ose tout. C'est même àça qu'on les reconnaît. Michel Audiard

Accueil du site > Astuces > Unix > Sauvegarder et restaurer une base SVN

Subversion / FreeBSD 8

Objectif : déménagement de machine. La sauvegarde du dépôt svn s’impose pour sa restauration sur un nouveau serveur. Pas à pas.

Sur l’ancien serveur ssh

Sauvegarder le dépôt :

svnadmin dump repos > repos_ancienne_machine-20110107.asc

L’extension .asc a été ajoutée ici pour plus de clarté. Sa présence n’est pas obligatoire.

Recopier la sauvegarde sur le nouveau serveur (noter le ’ :’ en de ligne) :

scp repos_ancienne_machine-20110107.asc monlogin@nouvelle_machine.foo.bar:

Sur le nouveau serveur ssh

Le chemin choisi pour cet exemple est /var/svn.

Si besoin, créer le nouveau dépôt sur la nouvelle machine :

cd /var/svn
svnadmin create repos

Restaurer la sauvegarde dans le nouveau dépôt :

cd /var/svn
svnadmin load repos < repos_ancienne_machine-20110107.asc

Vérifier le nouveau dépôt (liste les révisions restituées) :

svnadmin verify repos

Seul la base de données (repos/db) est modifiée par cette restauration. Les fichiers de configuration de ce nouveau dépôt ne sont pas restaurés. Si besoin, recopier ici les fichiers de configuration de l’ancien dépôt.

Les fichiers de configuration sont dans le répertoire repos/conf.

A vérifier également : les droits d’accès au dépôt. L’ensemble doit appartenir à l’utilisateur svn et à son groupe. Dans le doute, appliquer un droit d’accès global pour ce dépôt via, par exemple :

chown -fR svn:svn repos

Vérifier le fichier /etc/rc.conf. Il doit préciser le chemin de ce nouveau dépôt :

svnserve_enable="YES"
svnserve_flags="-d"
svnserve_data="/var/svn/repos"
svnserve_user="svn"
svnserve_group="svn"

Redémarrer le serveur :

/usr/local/etc/rc.d/svnserve restart

Lister les répertoires disponibles dans ce nouveau dépôt, ici via le réseau :

svn ls svn://localhost

A lire si besoin :

Plussoyez !

Les forums sont fermés.