linux dump备份svn,svnadmin dump+load库中的某个目录用svndumpfilter 可实现

D:\02_study\06_subversion\svndemo>svnadmin dump D:\02_study\06_subversion\svndemo\SVNRepo2>SVNRepo2_dumpfile0609

* 已转存版本 0。

* 已转存版本 1。

。。。。。。

* 已转存版本 103。

D:\02_study\06_subversion\svndemo>

************************************************

只想恢复:

D:\02_study\06_subversion\svndemo>svndumpfilter include /branches/my-calc-branch1/< SVNRepo2_dumpfile0609 >SVNRepo2_dumpfile0609_my-calc-branch1

包含的前缀:

'/branches/my-calc-branch1'

版本 0 提交为 0。

版本 1 提交为 1。

。。。。。。

版本 76 提交为 76。

svndumpfilter: 复制源路径“/trunk”无效

D:\02_study\06_subversion\svndemo>

************************************************

include加上trunk

D:\02_study\06_subversion\svndemo>svndumpfilter include trunk/ branches/my-calc-branch1/ < SVNRepo2_dumpfile0609 >SVNRepo2_dumpfile0609_my-calc-branch1

包含的前缀:

'/trunk'

'/branches/my-calc-branch1'

版本 0 提交为 0。

版本 1 提交为 1

。。。。。。

版本 99 提交为 99。

svndumpfilter: 复制源路径“/branches/br1/test_d1”无效

D:\02_study\06_subversion\svndemo>

************************************************

include中再加上/test_d1

D:\02_study\06_subversion\svndemo>svndumpfilter include /trunk/ /branches/my-calc-branch1/ /branches/br1/test_d1 SVNRepo2_dumpfile0609_my-calc-branch1

包含的前缀:

'/trunk'

'/branches/my-calc-branch1'

'/branches/br1/test_d1'

版本 0 提交为 0。

版本 1 提交为 1。

。。。。。。

版本 103 提交为 103。

丢弃 87 节点:

'/bin'

'/branches'

'/branches/br1'

。。。。。。

'/tags/tag_REL2/test_d1'

D:\02_study\06_subversion\svndemo>

************************************************

创建新的库

D:\02_study\06_subversion\svndemo\SVNRepo2_my-calc-branch1

************************************************

尝试直接load

D:\02_study\06_subversion\svndemo>svnadmin load SVNRepo2_my-calc-branch1

svnadmin: 期望文件系统格式在“1”到“3”之间;发现格式“4”

***************

在工作空间中checkout也提示:

Command: Checkout from svn://localhost, revision HEAD, Fully recursive, Externals included

Error: 期望文件系统格式在“1”到“3”之间;发现格式“4”

Finished!:

***************

网上搜索得,是因为这新库SVNRepo2_my-calc-branch1是用turtoiseSVN的create repository here创建的导致的问题

解决办法:删除SVNRepo2_my-calc-branch1,重新创建目录后用命令创建新库:

D:\02_study\06_subversion\svndemo\SVNRepo2_my-calc-branch1>svnadmin create .

再执行命令:

D:\02_study\06_subversion\svndemo>svnadmin load SVNRepo2_my-calc-branch1 。。。。。。------- 提交后版本 1开始+1递增

------- 提交后版本 76 >>>

<<< 开始新的事务,基于原始版本 77

* 正在增加路径: branches/my-calc-branch1 ...svnadmin: File not found: trans

action '76-24', path 'branches/my-calc-branch1'

***************

创建了目录branches/my-calc-branch1后重新执行

D:\02_study\06_subversion\svndemo>svnadmin load SVNRepo2_my-calc-branch1 <<< 开始新的事务,基于原始版本 1

------- 提交新版本 79 (从原始版本 1 装载) >>>

。。。。。。

<<< 开始新的事务,基于原始版本 7

------- 提交新版本 85 (从原始版本 7 装载) >>>

<<< 开始新的事务,基于原始版本 8

* 正在增加路径: trunk ...svnadmin: File already exists: filesystem 'SVNRepo

2_my-calc-branch1/db', transaction '85-2e', path 'trunk'

***************

删除了trunk后再执行:

D:\02_study\06_subversion\svndemo>svnadmin load SVNRepo2_my-calc-branch1 <<< 开始新的事务,基于原始版本 90

* 正在增加路径: branches/br1/test_d1 ...svnadmin: File not found: transaction '175-4x', path 'branches/br1/test_d1'

***************

按原库目录在新库中创建所有的目录结构(无次序)

原库目录为:

├─branches

│  ├─br1

│  │  ├─javaProj1

│  │  │  └─src

│  │  │      └─echo

│  │  └─test_d1

│  ├─br2

│  ├─br3

│  │  ├─javaProj1

│  │  │  └─src

│  │  │      └─echo

│  │  └─test_d1

│  ├─br_20090803

│  │  └─javaProj1

。。。。。。(省略N个分支)

删除了trunk后再执行,创建了该结构br3(包含br3)以上的目录,执行时又提示:

。。。。。。

<<< 开始新的事务,基于原始版本 90

* 正在增加路径: branches/br1/test_d1 ...svnadmin: File already exists: filesystem 'SVNRepo2_my-calc-branch1/db', transaction '283-7z', path'branches/br1/test_d1'

***************

删除了trunk、test_d1后再执行

。。。。。。

<<< 开始新的事务,基于原始版本 103

------- 提交新版本 395 (从原始版本 103 装载) >>>

成功!

************************************************

总结:

1、svnadmin dump D:\02_study\06_subversion\svndemo\SVNRepo2 >SVNRepo2_dumpfile0609

2、svndumpfilter include /trunk/ /branches/my-calc-branch1/ /branches/br1/test_d1 SVNRepo2_dumpfile0609_my-calc-branch1

注意:这里include的内容要根据提示缺啥加啥

3、创建新的库

注意:这里要用命令“svnadmin create 库路径”创建,用turtoiseSVN的"create repository here"会报错

4、svnadmin load SVNRepo2_my-calc-branch1 注意:这里必须根据提示增删目录

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值