一、SVN冷备:
环境说明:winServer 2008r2 VisulSVNSever2.7
1.查找SVN服务器上目录的部署位置:
启动visualSVNServer 右键VisualSVN Server (local)-> Properties->Stotrage
查看所有的文件库目录
2.选择要备份的目录,复制。(备份文件生成)。
3.还原:在SVNServer上创建项目。重复1,2 找到新建项目对应的文件,使用备份文件夹替换。刷新SVN服务器目录树即可。
二:备份还原:
1.svnadmin dump 导入数据文件:
1)Cmd 打开命令行提示工具。
2)找到svnServer 安装目录下的svnadmin.exe 一般为 ./VisualSVN Server/bin/svnadmin.exe,拖拽只命令行窗口,去掉.exe
3)在末尾空格 输入 dump
4)使用一.1.2找到要备份的文件库位置 ,拖拽至命令行窗口
5)末尾空格输入 > backfile.dump backfile 为要到出的文件的完整名 dump为自定义后缀 任意 均可 如 e:\MyWork.d e:\MyWork.df
命令行输入 如下:
"D:\Program Files\VisualSVNServer\bin\svnadmin" dump E:\Repositories\testSVN > e:\testSNVBack.dbc
执行输出:*.Dumped revision 0
*.Dumped revision 1
…..
*.Dumped revision n
2.svnadmin load 还原 :
1)在SVNServer上创建空项目
2)重复1.1),1.2)
3)空格输入load 重复1.4)
4)输入 < backfile.dump
完整命令行如下:
"D:\Program Files\VisualSVNServer\bin\svnadmin" load E:\Repositories\testSVN < e:\testSNVBack.dbc
3.svnadmin dump 备份指定版本:
svnadmin dump -r lowRevision:HeighRevision > ouputfile.bf
导出0-50 的版本
"D:\Program Files\VisualSVNServer\bin\svnadmin" dump -r 0:50 E:\Repositories\testSVN > e:\testSNVBack.dbc
4.导出增量 dump -r lowRevision[:HeighRevision] --incremental []可选
"D:\Program Files\VisualSVNServer\bin\svnadmin" dump -r 1 --incremental E:\Repositories\testSVN > e:\testSNVBack.dbc
"D:\Program Files\VisualSVNServer\bin\svnadmin" dump -r 10:100 --incremental E:\Repositories\testSVN > e:\testSNVBack.dbc
三、过滤目录
1.使用svndumpfilter 过滤dump 导出的文件
1) include 选择制定的目录
"D:\Program Files\VisualSVNServer\bin\svndumpfilter" include /trunk <E:\testSNVBack.dbc> e:\testFilter.dbc
------路径名称区分大小写;
------如果include 的路径中有使用到其他路径的 需要将用到的路径包进来。
"D:\Program Files\VisualSVNServer\bin\svndumpfilter" include /trunk /tag <E:\testSNVBack.dbc> e:\testFilter.dbc
2)exclude 排除制定的目录。排除掉依赖的目录,将导致恢复失败。
所以尽量不要使用 copy from path 来移动目录。
3)使用过滤后的文件恢复SVN库时经常与遇到错误提示
*adding path : ……(某目录) svnadmin: E160013; File not found: transaction ……..,path '某目录'
使用SVNserver 创建对应的目录,再执行 load 例如:
某目录 为 '/trunk/source/xx',则使用SVNServer 创建 trunk/source目录