Here is one option for you. It is a vbscript that dumps each repository. You could easily alter this to do a hotcopy or incremental dump if you wanted.
Basic usage is simple. Save this as a vbscript file into your repository home folder (SVN default is c:\Repositories). Edit lines 21/22 and line 25 to match your needs (look for the ****). I never could get this to run the command directly from the vbscript so it generates a batch file on the file and executes that. Watch out for line wraps from the html post. I've tried to fix anything I saw here but it might change after I post it. Joel Reinford Option Explicit 'loop through folders and use svnadmin to dump all repos to a backup location 'trying to run this type of command for each repo 'C:\Program Files\VisualSVN Server\bin>svnadmin dump C:\svnrepos \MyProject > \\nas\folder\MyProject.bak Const ForReading = 1 Const ForWriting = 2 Const ForAppending = 8 Dim scriptPath, argCount, namedArgs scriptPath = replace(wscript.scriptfullname, wscript.scriptname, "") argCount= WScript.Arguments.Count Set namedArgs = WScript.Arguments.Named Dim fso, svnExePath, repoFolderPath, backupFolderPath Set fso = CreateObject("Scripting.FileSystemObject") '************* uncomment or edit for the correct path to svnadmin **************** svnExePath = "C:\Program Files\VisualSVN Server\bin\svnadmin.exe" 'svnExePath = "C:\Program Files (x86)\VisualSVN Server\bin \svnadmin.exe" '************* edit this line to match your backup destination **************** backupFolderPath = "c:\SvnBackup" 'only needs editing if you don't put it into the repos folder repoFolderPath = scriptPath If namedArgs.Exists("help") Or namedArgs.Exists("?") Then Wscript.Echo "Usage: " Wscript.Echo "/svn:<svn> is optional to enter the svnadmin executable full path & name." Wscript.Echo " - default is " & svnExePath Wscript.Echo Wscript.Echo "/repos:<repos> is optional to select the svn repositories folder." Wscript.Echo " - default is " & repoFolderPath Wscript.Echo Wscript.Echo "/backup:<backup> is optional to select the svn backup destination folder." Wscript.Echo " - default is " & backupFolder Wscript.Quit End If If namedArgs.Exists("svn") Then svnExePath = Trim(namedArgs.Item("svn")) End If If namedArgs.Exists("repos") Then repoFolderPath= Trim(namedArgs.Item("path")) End If If namedArgs.Exists("backup") Then backupFolderPath= Trim(namedArgs.Item("backup")) End If DumpSvnRepos svnExePath, repoFolderPath, backupFolderPath 'create and execute a batch file to dump all of the repos 'for some reason running the dump command directly will not work Function DumpSvnRepos(svnExePath, rootFolderPath, backupFolderPath) Dim rootFolder, subFolders, folder, file Dim logFileName, text Set rootFolder = fso.GetFolder(rootFolderPath) Set subFolders = rootFolder.SubFolders logFileName = Replace(wscript.ScriptFullName, ".vbs", ".bat") Set file = fso.OpenTextFile (logFileName, ForAppending, True) For Each folder in subFolders Wscript.Echo folder.Name text = Chr(34) & svnExePath & Chr(34) & " dump " _ & Chr(34) & repoFolderPath & "\" & folder.Name & Chr(34) _ & " > " & Chr(34) & backupFolderPath & "\" & folder.Name & ".bak" & Chr(34) file.WriteLine(text) Next file.Close Wscript.Echo "Batch file created: " & logFileName runCommand logFileName End Function Function runCommand(commandLine) Dim shell, errorCode Set shell = CreateObject("WScript.shell") shell.Run commandLine, ,True 'command, WindowType, WaitOnReturn errorCode = err.Number If errorCode > 0 Then wscript.echo "runCommand Error " & err.Number & ": " & VbCrLf _ & commandLine & VbCrLf & err.Description logText "runCommand Error " & err.Number & ": " & vbTab _ & commandLine & vbTab & err.Description Err.Clear Else logText "runCommand Success : " & vbTab & commandLine End If runCommand = errorCode End Function Sub LogText(text) Dim file, logFile logFile = Replace(wscript.ScriptFullName, ".vbs", ".txt") Set file = fso.OpenTextFile (logFile, ForAppending , True) ' Writes Text every time you run this VBScript file.WriteLine(text) file.Close End Sub