新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > Web开发 > Asp教程 > 正文:Windows 下SVN 版本库的自动备份脚本

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

新客网 XKER.COM 2007-01-16 来源: 收藏本文

自动将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=

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐