Comment décharger plusieurs repositorys de subversion à la fois sur différents systèmes d'exploitation

Comment puis-je faire un vider un certain nombre de repositorys de subversion – avec tous les référentiels résidant dans un dossier – sur différents systèmes d'exploitation (shells Linux, Windows 9x / Vista / XP / Server, etc.)?

Je publierai une réponse qui fonctionne sur Windows Server 2003 – mais peut-être qu'il y en a plus élégant.

(Context supplémentaire de la question ici .)

Frapper:

#!/bin/bash REPO_BASE=... SVNADMIN=... cd "$REPO_BASE" for f in *; do test -d "$f" && $SVNADMIN dump "$f" >"$f.svn" done 

( test -d s'assure de décharger les directorys uniquement)

Cela fonctionne sur le server Windows 2003 et est susceptible de fonctionner sur d'autres systèmes d'exploitation Windows aussi. Il search des sous-directorys dans le directory "repos" spécifié et essaie d'exécuter un svnadmin dump sur chacun d'eux. Il crée des files de vidage nommés (reponame).svn

dump_repos.bat

 cd \my\subversion\repos dir /A:D /B> dirs.tmp FOR /F %%i IN (dirs.tmp) DO ( "C:\path\to\subversion\bin\svnadmin.exe" dump %%i > %%i.svn )