Windows 下SVN 版本库的自动备份脚本

王朝system·作者佚名  2006-12-14
窄屏简体版  字體: |||超大  

自动将F:\SVN下的所有的版本库备份到F:\BAK目录下,并用bzip2自动压缩。

可以通过计划任务定期调用。

为了支持压缩需要在SVN_BIN下方置 bzip2.exe,cygwin1.dll。

1、BACKUP.bat

@echo off

rem 设置SVN可执行文件所在的目录

set SVN_BIN=F:\svn-win32-1.4.0\bin

rem 设置SVN代码库所在的驱动器盘符

set SVN_DRV=F:

rem 设置SVN代码库所在的目录

set SVN_DIR=svn

rem 设置备份文件存贮的路径

set SVN_BAK=F:\bak

rem 如果备份目录不存在,则创建之

if not exist %SVN_BAK% md %SVN_BAK%

rem SVN代码库根目录的完整路径

set SVN_DB=%SVN_DRV%\%SVN_DIR%

%SVN_DRV%

cd cd %SVN_DIR%

echo 开始备份SVN代码库...

for /F %%d in ('dir /AD /B') do call %SVN_DB%\work.bat %%d

echo 备份SVN代码库完毕...

%SVN_DRV%

cd @echo on

2、WORK.bat

set SVN_SRC=%1

for /F "tokens=1,2,3 delims=- " %%1 in ('Date /T') do set DATE=%%1-%%2-%%3

for /F "tokens=1,2 delims=:" %%1 in ('time /T') do set TIME=%%1-%%2

if not exist %SVN_BAK%\%DATE% md %SVN_BAK%\%DATE%

set BAK_TO=%SVN_BAK%\%DATE%\%SVN_SRC%@%DATE%@%TIME%.svn

echo 开始将 %SVN_DB%\%SVN_SRC% 备份到 %BAK_TO% ...

%SVN_BIN%\svnadmin.exe dump %SVN_DB%\%SVN_SRC% >> %BAK_TO%

echo 开始压缩 %BAK_TO% ...

rem %SVN_BIN%\gzip -9 %BAK_TO%

%SVN_BIN%\bzip2 %BAK_TO%

echo 压缩 %BAK_TO% 完毕

echo 将 %SVN_DB%\%SVN_SRC% 备份到 %BAK_TO% 完毕

set BAK_TO=

set SVN_SRC=

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航