- @echo off
- setlocal enabledelayedexpansion
- title backup svn files
-
- REM 每日增量备份
- set "temp=%date:~0,4%%date:~5,2%%date:~8,2%"
- set "temp=%temp: =0%"
-
- md "D:\svnbackup_day\Repositories_backup_%temp%"
-
- for /f "delims=" %%i in ('dir /ad /b "D:\Repositories"') do (
- echo 正在处理 %%i
-
- REM 获取最新版本信息
- svnlook youngest "D:\Repositories\%%i" > "D:\svnbackup\tem_version\%%i_tem.txt"
-
- for /f "tokens=* delims= " %%a in ('type "D:\svnbackup\tem_version\%%i_tem.txt"') do (
- set "youngest=%%a"
- )
-
- REM 获取上次备份版本信息,并进行增量备份
- for /f "tokens=* delims= " %%a in ('type "D:\svnbackup\version\%%i_version.txt"') do (
- set "old=%%a"
- )
-
- REM 进行增量备份
- if !youngest! gtr !old! (
- svnadmin dump "D:\Repositories\%%i" -r !old!:!youngest! --incremental > "D:\svnbackup_day\Repositories_backup_%temp%\%%i.dump"
- )
-
- REM 记录最新版本信息
- echo !youngest! > "D:\svnbackup\version\%%i_version.txt"
- )
复制代码
|