Windows SVN遷移到Linux 服務器

1、備份VisualSVN項目

1. 如今要使用Linux做爲svn服務器,以前是在windows Server 2008上的,用的是VisualSVN, 以下圖所示。linux

clip_image002

2. 如今svn中有一個項目fpp,須要將fpp這個項目導出到linux環境下。運行cmd,輸入命令 svnadmin dump E:\Repositories\fpp > e:\svnbak\fpp.dump將項目導出到e:\svnbak目錄下。運行結果以下:shell

clip_image004

3. 可見命令會導出每一個版本的詳細信息,保證了以前的歷史信息不會丟失。如今咱們便得出備份文件fpp.dump,以下:windows

clip_image006

4. 利用批處理實現項目的批量導出,編寫svnbak.bat, 雙擊運行,會一次性導出全部項目,結果以下圖:服務器

clip_image008

2、上傳備份文件到Linux

1. 利用ftp, ssh等工具將fpp.dump文件傳輸到Linux服務器上,這裏利用直接利用openSSH這個軟件上傳。如圖,文件上傳成功,文件的路徑爲/root/fpp.dump。eclipse

clip_image010

3、Linux下SVN的安裝與配置

1. Linux下安裝svn,這裏直接利用yum命令進行安裝。yum install subversion完成subversion的安裝。ssh

2. 創建版本庫目錄svndata。svn

mkdir /svndata工具

svnserve -d -r /svndata #啓動svn,設置版本庫目錄爲/svndata學習

killall svnserve #關閉svnspa

3. 創建項目庫

svnadmin create /svndata/fpp

4. 配置用戶訪問權限

cd /svndata/fpp/conf

vi svnserve.conf

釋放以下幾行的註釋

anon-access=none

auth-access=write

password-db=passwd

5. 增長訪問用戶,格式爲(username = password),等號兩邊要加空格,不然無效。以下圖,沒有加空格,就一直沒用:

clip_image012

6. 將svn設爲服務。仔細閱讀svn的服務腳本,/etc/init.d/svnserve, 從中能夠看出svn的配置文件是/etc/sysconfig/svnserve, 咱們能夠在其中寫本身的配置,從args參數中能夠看出,它使用了OPTIONS變量就能夠了。經過以下命令即可以設置開機啓動:

chkconfig --level 35 svnserve on

image

image

7. svn的命令這裏不做介紹,你們本身去學習使用。

4、導入備份文件

1. 輸入命令:svnadmin load /svndata/fpp < /root/fpp.dump,運行結果以下:

clip_image014

2. 爲了不逐個導入項目,因此寫了一個shell腳本,進行批量導入,遍歷備份目錄下全部*.dump文件,併產生相應的導入命令,15個項目,花了10分鐘左右完成導入,腳本以下:

clip_image016

5、客戶端進行代碼的檢出

1.windows端安裝TortoiseSVN, 右鍵svn checkout

clip_image018

2. 在打開的對話框中,輸入svn庫的地址,肯定即可以同步項目。地址以下,ip地址加項目名稱,如圖:

clip_image019

3. svn提示檢出成功,在目錄下能夠找到檢出的項目。

clip_image021

4. 對於之前的項目,重定向到新的svn服務器,右鍵->TortoiseSVN->Relocate,在彈出的對話框中填寫新的地址,TortoiseSVN會提示修改爲功,以後,就可使用新的svn了。

clip_image023

clip_image024

5. 若是你是使用eclipse中的subeclipse的插件,首先打開svn資源庫視圖,而後選擇你的項目,右鍵選擇重定向,填入新的svn地址。

clip_image025

6. linux下若使用svn命令的話,形式以下:

svn switch --relocate (Old Repository Root) (New Repository Root)

(轉載與其餘交流平臺)

相關文章
相關標籤/搜索