2009-12-08 12 views
1

Est-ce que quelqu'un ici sait s'il est possible de sauvegarder seulement la partie d'un dépôt de subversion qui a changé depuis la dernière sauvegarde (c'est-à-dire: le delta)? Pratiquement, cela pourrait être quelque chose comme faire une sauvegarde complète tous les minuit, et un delta toutes les heures. Si un accident se produisait, disons à 11:07, , il faudrait utiliser la dernière sauvegarde complète de minuit et appliquer tous les deltas , donc seulement sept minutes seraient perdues.Subversion: est-il possible de sauvegarder uniquement le delta depuis la dernière sauvegarde?

En outre, si cela devrait être possible, peut-il être fait dans un « sauvegarde à chaud » mode (si tel est le terme correct pour elle), qui est, alors que d'autres utilisateurs fonctionnent, vérifier en particulier dans, sur le référentiel.

Répondre

5

Ceci est certainement possible. Vous pouvez faire un svnadmin dump -r(from_rev) --incremental pour vider tous les changements de la révision (from_rev) (si vous omettez le --incremental, le contenu de la révision (from_rev) sera entièrement sauvegardé). Toutes les validations sont atomiques, donc vous pouvez faire une sauvegarde à chaud de cette façon - les validations en cours ne seront pas dans cette sauvegarde mais dans la suivante.

+0

C'est l'approche que je prends. J'écris un script python à dump/load, qui sera exécuté toutes les heures. Le seul inconvénient de cette approche est qu'elle ne capture que les validations (ou d'autres modifications de rev), elle ne capture pas les modifications de la configuration d'un dépôt (ou d'autres événements changeant sans révision). – darrickc

+2

Vous pouvez également utiliser svnsync sur un hook post-commit: http://svnbook.red-bean.com/en/1.4/svn.ref.svnsync.html – darrickc

0

Il est plus simple et probablement aussi efficace d'utiliser rsync. rsync a aussi l'avantage de pouvoir faire plus de choses, autres que le référentiel.

+0

Surtout avec le système de fichiers fsfs, rsync fonctionne très bien pour ça. Cependant, ce n'est pas très bien en mode de sauvegarde à chaud, car tous les fichiers de verrouillage et les éléments intermédiaires sont également rsync. – Wim