如何在各种操作系统上一次转储多个 subversion 存储库

Pek*_*kka 6 svn export

如何在各种操作系统(Linux shell、Windows 9x/Vista/XP/Server 等)上转储多个 Subversion 存储库 - 所有存储库都位于一个文件夹中?

我将发布一个适用于 Windows Server 2003 的答案 - 但也许还有一个更优雅的答案。

此处问题的其他背景。)

Pek*_*kka 6

这适用于 Windows 2003 服务器,也可能适用于其他 Windows 操作系统。它在指定的“repos”目录中查找任何子目录,并尝试svnadmin dump在每个子目录上运行。它创建名为的转储文件(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
)
Run Code Online (Sandbox Code Playgroud)


Chr*_*her 4

重击:

#!/bin/bash
REPO_BASE=...
SVNADMIN=...

cd "$REPO_BASE"
for f in *; do
    test -d "$f"  &&  $SVNADMIN dump "$f" >"$f.svn"
done
Run Code Online (Sandbox Code Playgroud)

test -d确保仅转储目录)