svn項目遷移到git項目

1、首先導出svn項目爲dump文件

導出命令:首先鎖定當前repos,然後導出到dumpfile文件

svnlook youngest myrepos
svnadmin dump myrepos > dumpfile

上面是從根節點導出(導出的文件可能非常大,我的dumpfile就有40G),可以指定節點導出。

svnadmin dump myrepos -r 0:1000 > dumpfile1
svnadmin dump myrepos -r 1001:2000 --incremental > dumpfile2
svnadmin dump myrepos -r 2001:3000 --incremental > dumpfile3

 

2、利用上面的dumpfile,用svn導入dumpfile 得到svn的倉庫

svnadmin create newrepos
svnadmin load newrepos < dumpfile

3、最後利用gitsvn 命令,克隆svn項目即可

git svn clone file:///tmp/test-svn -T trunk -b branches -t tags

注意:項目過大的話,可以將後面的“ -b branches -t tags  ” 刪除,只保留trunk分支。

 

備註:如果git svn clone file:/// xxxx  報錯的話,可以嘗試使用 git svn clone svn://localhost 地址

但是前提是需要打開svnserve 服務:(光標會閃爍,不要關閉命令窗口,關閉會推出server服務)

 

可以參考官方文件:

http://svnbook.red-bean.com/en/1.7/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate

https://git-scm.com/book/zh/v1/Git-%E4%B8%8E%E5%85%B6%E4%BB%96%E7%B3%BB%E7%BB%9F-%E8%BF%81%E7%A7%BB%E5%88%B0-Git

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章