2009-10-23 7 views
4

OK. J'ai utilisé la copie d'écran de svn pour faire des sauvegardes incrémentales, comment puis-je tester que les hotcopies fonctionnent correctement?Comment récupérer le référentiel à l'aide de la hotcopy SVN?

J'ai cherché les messages ici concernant la hotcopie. La plupart d'entre eux semblent simplement encourager l'utilisation de la hotline hotline svn, mais ne pas parler de la façon de récupérer en utilisant hotcopy une fois faite.

Y at-il des conseils sur la façon de récupérer en utilisant la hotcopy que j'ai faite?

J'ai aussi vérifié http://svnbook.red-bean.com/, mais je n'ai pas vraiment trouvé quoi que ce soit.

Merci.

+0

Je pense que cela fait partie de http://serverfault.com/. –

Répondre

11

Il n'est pas possible de faire des sauvegardes incrémentielles avec svnadmin hotcopy. Svnadmin hotcopy fonctionne comme une commande de copie de système de fichiers, sauf qu'il ne copiera jamais les transactions ouvertes.

Pour restaurer un référentiel, vous pouvez simplement svn copier votre sauvegarde sur l'emplacement à partir duquel vous souhaitez la diffuser.

Pour vérifier l'intégrité d'une utilisation du référentiel svnadmin vérifier

par exemple:

Supposons que votre repo svn sont sur /var/svn/repo et vos sauvegardes sont stockées sur /var/backups/svn et votre référentiel my_project est cassé.

Utilisation:

svnadmin hotcopy /var/svn/repos/my_project /var/backups/svn/ 

pour créer une nouvelle sauvegarde (faire tous les jours ou semaine ..) et:

svnadmin hotcopy /var/backups/svn/my_project /var/svn/repos/ 

pour restaurer votre sauvegarde (note: vous devez retirer votre pension avant, comme hotcopy ne remplacera pas votre ancien repo, vous aussi vraiment devrait chercher la cause de l'échec de votre dépôt).

utiliser également:

svnadmin verify /var/svn/repos/my_project 

pour vérifier l'intégrité de votre dépôt

+0

Après avoir fait une copie avec svnadmin hotcopy, vous pouvez utiliser svnsync pour le maintenir à jour. Passez un appel à svnsync dans le post-commit-hook et chaque commit sera sauvegardé juste après son lancement. –

1

Vous recherchez simplement un test de fumée? Il suffit de pointer n'importe quel client (directement sur la machine, avec le protocole file: // si vous voulez) et de faire des checkouts, les fichiers constituent un repo valide. La hot-copy est juste pour s'assurer que vous obtenez une copie cohérente (par exemple, les checkins qui se produisent pendant la hot-copy ne bousillent pas la sauvegarde). Svnadmin hotcopy crée toujours des copies complètes de votre référentiel.

Questions connexes