【Windows】Windows 使用bat脚本备份SVN仓库

echo off
set SVN_ROOT=J:\Repositories
set BACKUP_SVN_ROOT=J:\Repositories-back\svn-back
if exist %BACKUP_SVN_ROOT% (
    rem 存在备份文件夹先删除
        rd /s /q %BACKUP_SVN_ROOT%
)
rem 创建备份文件夹
md %BACKUP_SVN_ROOT%
rem 循环SVN_ROOT目录下的文件夹
for /D %%I in (%SVN_ROOT%\*) do (
        rem ~n只显示文件名称
        echo %%~nI
        rem 判别子目录下是否存在svnserve.conf文件
        @if exist "%%I\conf\svnserve.conf" (
            rem svn备份
                svnadmin hotcopy %SVN_ROOT%\%%~nI %BACKUP_SVN_ROOT%\%%~nI --clean-logs
        )
)
if exist %BACKUP_SVN_ROOT% (
        rem 压缩备份文件夹
        "C:\Program Files\WinRAR\Rar.exe" a -ep1 J:\Repositories-back\svn-back_%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%.rar %BACKUP_SVN_ROOT%
)
rem 删除备份文件夹
rd /s /q %BACKUP_SVN_ROOT%
pause
posted @ 2025-05-21 09:40  qiutian-hao  阅读(16)  评论(0)    收藏  举报