今天彻底研究了一下VSS的自动备份
方法如下:
1。编写一个bat文件,内容如下(可根据情况修改路径):
@echo off
@title Backing up SourceSafe databases
rem VSS_Install_Path :VSS的安装路径
set VSS_Install_Path="C:\Program Files\Microsoft Visual SourceSafe\"
rem VSS_DB :需要备份的VSS DB的路径 进入vss后file-open Sourcesafe Database后,即可知道地址
set VSS_DB="D:\VSS1"
rem VSS_Admin_Password :VSS DB管理员的密码
set VSS_Admin_Name="admin"
rem VSS_Install_Path :VSS的安装路径
set VSS_Admin_Password="123"
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%krem Bak_File :备份文件的输出地址
set Bak_File="D:\backup_%DATE%.ssa"
rem 执行备份
%VSS_Install_Path%"ssarc.exe" -d- -o -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB% %Bak_File% $/
@echo Finished backups
注释:
1 )、“FOR /F "tokens=1-3 delims=- " %%i IN ("date /t") DO SET DATE=%%i-%%j-%%k”
设置一个获取当前日期的变量年月日,用于每日备份的文件名
如果想用年月日时分来标记,红色代码部分改为下面的:
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i%%j%%k
FOR /F "tokens=1-2 delims=: " %%i IN ('time /t') DO SET TIME=%%i%%j
rem Bak_File :备份文件的输出地址
set Bak_File="D:\backup_%DATE%%TIME%.ssa"
2)、“%VSS_Install_Path%"ssarc" -d- -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB% %Bak_File% $/”
BAT文件的核心:使用了VSS安装路径下的 ssarc.exe 这个实用的工具来备份指定的VSS DB.
2.在开始->附件->系统工具->任务计划中,添加一个计划任务,设定计划任务每天自动备份的时间。
3. 对于压缩成“SSA”的恢复情况
a) 拷贝“SSA”文件到制定目录下
b) 打开“Visual SourceSafe Administrator”
c) 打开“Archive -> Restore Project…”
d) 浏览到存放备份文件的目录,打开生成的SSA文件
e) 检查是否有问题即可。
2010.4.12
适用了两天发现上面的自动备份存在问题,总需要手动去回车执行,而且只会生成一个ssa的文件而没有txt文件。所以今天又找了资料改进了一下代码,如下:
@echo off
@title 备份ProjectVss项目组SourceSafe数据库
rem VSS_Install_Path :VSS的安装路径
set VSS_Install_Path="C:\Program Files\Microsoft Visual SourceSafe\"
rem VSS_DB :需要备份的VSS DB的路径
set VSS_DB="D:\OA_Source"
rem Bak_File :备份文件的输出地址
set Bak_File="D:\VSS"
FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k
FOR /F "tokens=2-2" %%i IN ('date /t') DO SET DAY=%%i
rem 执行备份
%VSS_Install_Path%ssarc.exe -d- -s%VSS_DB% -yAdmin,4a3dr -o%Bak_File%ProjectVSS_Bak(%DATE%%DAY%).txt -l %Bak_File%ProjectVSS_Bak(%DATE%%DAY%).ssa " $/
if errorlevel 1 (
echo 备份失败
) ELSE (
echo 备份完成
)
@echo on
rem 每次备份后,会在指定的路径下生成类似这种形式的两个文件:ProjectVSS_Bak(2010-03-24 星期六).txt和 ProjectVSS_Bak(2010-03-29 星期六).ssa