雖然(我也只能這么說)現(xiàn)在SVN用的人越來越少,但是公司目前還是使用SVN來管理代碼和文檔。今天去看我們的SVN服務(wù)器的電腦,上面的C盤也居然馬上滿了,無奈之下,也不能去隨便刪除,cmd命令也運(yùn)行不起來,反正各種問題,當(dāng)然了這些問題都是可以解決的,但是問題太多,以至于我不想去修改,裝個(gè)系統(tǒng)得了,但是SVN的數(shù)據(jù)不能丟啊,所以只能遷移,其實(shí)還是比較簡單的,下面就是操作步驟:
數(shù)據(jù)備份
-
把版本的數(shù)據(jù)備份下來
- 找到本地的倉庫地址:打開
VisualSVN Server,在VisualSVN Server上右鍵 →properties→storage,右側(cè)的Repositories Root就是本地倉庫的地址,如下圖:
圖1-1
圖1-2 - 打開命令行窗口,輸入以下指令(如果你沒有設(shè)置SVN的環(huán)境變量需要進(jìn)入
VisualSVN Server的安裝目錄的bin目錄下打開命令行窗口):svnadmin dump <local-repo-path> > <dump-file-path>- 說明:
<local-repo-path>:本地的倉庫地址根路徑;<dump-file-path>:備份文件的路徑 - 鍵入以上指令以后,你要備份的倉庫的版本數(shù)據(jù)聯(lián)通歷史提交記錄就全部導(dǎo)入到了備份文件中
- 說明:
- 找到本地的倉庫地址:打開
-
備份用戶信息、分組信息和授權(quán)信息
-
在倉庫的根路徑下面有三個(gè)文件如圖2-1
圖2-1- 其中
groups.conf是分組信息,htpasswd是用戶密碼,VisualSVN-GlobalWinAuthz.ini是授權(quán)信息文件
- 其中
- 手動(dòng)拷貝并備份這三個(gè)文件,即可實(shí)現(xiàn)用戶信息、分組信息和授權(quán)信息的備份;
-
數(shù)據(jù)恢復(fù)
- 安裝新的
VisualSVN Server,不再羅嗦,需要注意的是電腦的名稱不能是中文的,否則會(huì)拒絕安裝; - 在安裝完成的
VisualSVN中新建空的倉庫; - 同樣的打開命令行,輸入恢復(fù)的指令
svnadmin load <local-empty-repo-path> < <dump-file-path>- 說明:
<local-empty-repo-path>:新建的空的倉庫路徑;<dump-file-path>:以前備份的文件 - 執(zhí)行以上指令后就會(huì)按照之前的歷史記錄重新執(zhí)行,數(shù)據(jù)就回來了
- 說明:
- 恢復(fù)用戶信息、分組信息和授權(quán)信息
- 只需要把之前備份的那三個(gè)文件(如圖2-1)覆蓋新的倉庫中的這三個(gè)文件,然后重啟
VisualSVN Server即可;
- 只需要把之前備份的那三個(gè)文件(如圖2-1)覆蓋新的倉庫中的這三個(gè)文件,然后重啟


