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 注意:這里必須根據提示增刪目錄
總結
以上是生活随笔為你收集整理的linux dump备份svn,svnadmin dump+load库中的某个目录用svndumpfilter 可实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux卸载Apache服务器
- 下一篇: linux svn e210003,sv