svn文件定时全量备份

在win11操作系统中,使用定时任务+脚本的方式实现对SVN文件的定时备份

SVN备份脚本

1 创建脚本simpleBackup.bat

该脚本主要用于实现备份过程的信息展示

bash 复制代码
@echo 正在备份版本库%1......   
@md %BACKUP_DIRECTORY%\%2 
@%SVN_HOME%\bin\svnadmin hotcopy %1 %BACKUP_DIRECTORY%\%2  
@echo 版本库%1成功备份到了%2!	

2. 创建脚本 backup.bat

主要用来实现备份操作

bash 复制代码
cho off
::设置SVN的安装路径
set SVN_HOME="C:\Program Files\VisualSVN Server"
::设置SVN仓库的路径
set SVN_ROOT=F:\CodeRepositories
::设置备份仓库的路径
set BACKUP_SVN_ROOT=I:\SvnBak
::获取日期格式:年月日_时分秒毫秒,以此来命名备份文件
set TIME_DIR=%date:~,4%%date:~5,2%%date:~8,2%_%time:~,2%%time:~3,2%%time:~6,2%%time:~9,2%
set BACKUP_DIRECTORY=%BACKUP_SVN_ROOT%\%TIME_DIR%
if exist %BACKUP_DIRECTORY% goto checkBack  
echo %date:~0,10% %time:~0,-3% : 建立备份目录%BACKUP_DIRECTORY%>>%SVN_ROOT%/backup.log

md %BACKUP_DIRECTORY%
rem 验证目录是否为版本库,如果是则取出名称备份  
for /r %SVN_ROOT% %%I in (.) do @if exist "%%I\conf\svnserve.conf" call %SVN_ROOT%\simpleBackup.bat "%%~fI" %%~nI  
rem 以下是压缩文件使用
rem echo start zip donot stop  
rem %SVN_ROOT%\7z.exe a -tzip %BACKUP_SVN_ROOT%\%date:~0,10%.zip %BACKUP_DIRECTORY%\* -r >nul 
rem echo zip finished  
rem 清除临时创建备份目录  
rem cd %BACKUP_SVN_ROOT%
rem rd/s/q %BACKUP_DIRECTORY%  
rem del %date:~0,10%.zip%  /s/q
goto end
:checkBack  
echo backupfile %BACKUP_DIRECTORY%already exist,must clean。
goto end
:end
::pause

3 双击backup.bat文件进行测试,看是否能够执行成功

正常情况下,所设置的备份文件夹中(本例中为BACKUP_SVN_ROOT=I:\SvnBak)会出现以日期命名的文件夹。脚本设置成功。

设置定时任务

具体设置方式可参考https://blog.csdn.net/weixin_39688581/article/details/140987490?spm=1001.2014.3001.5502文中的第二节的2\~9小节。

区别是打开"任务计划程序"窗口的位置不同,win11可按下键盘上的win键,然后搜索"任务计划程序"。

备份频率可设置为每月备份一次。

相关推荐
私人珍藏库1 小时前
[吾爱大神原创工具] QtScreenSwitcher[Win]一个现代化、极简、高颜值的多屏开关工具。
windows·工具·软件·win·多功能
competes2 小时前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql
鹿鸣天涯2 小时前
Xftp传输文件时,解决“无法显示远程文件夹”方法
运维·服务器·计算机
unDl IONA3 小时前
服务器部署,用 nginx 部署后页面刷新 404 问题,宝塔面板修改(修改 nginx.conf 配置文件)
运维·服务器·nginx
零号全栈寒江独钓3 小时前
基于c/c++实现linux/windows跨平台获取ntp网络时间戳
linux·c语言·c++·windows
Web极客码3 小时前
WordPress管理员角色详解及注意事项
运维·服务器·wordpress
geinvse_seg3 小时前
中小团队如何低成本搭建项目管理系统?基于 Ubuntu 的 Dootask 私有化部署实战
linux·运维·ubuntu
星辰徐哥3 小时前
鸿蒙金融理财全栈项目——上线与运维、用户反馈、持续迭代优化
运维·金融·harmonyos
CSCN新手听安3 小时前
【linux】高级IO,以ET模式运行的epoll版本的TCP服务器实现reactor反应堆
linux·运维·服务器·c++·高级io·epoll·reactor反应堆
丶伯爵式3 小时前
Ubuntu 24.04 更换国内软件源指南 | 2026年3月26日
linux·运维·ubuntu·国内源·升级