Linux下SVN安裝配置

來源:互聯網
上載者:User

第一章 安裝

1. 採用源檔案編譯安裝。源檔案共兩個,為:
subversion-1.6.1.tar.gz (subversion 源檔案)
subversion-deps-1.6.1.tar.gz (subversion依賴檔案)
注意檔案版本必須一致,否則很容易產生各種奇怪的問題.

2. 上傳以上兩個檔案到伺服器上,解壓。解壓命令為:

1 tar xfvz subversion-1.6.1.tar.gz
2 tar xfvz subversion-deps-1.6.1.tar.gz

指令簡介:tar 為解壓命令,xfvz為tar命令的參數,用於解壓tar.gz格式壓縮的檔案。
 
3. 解壓後產生 subversion-1.6.1 子目錄,兩個壓縮包解壓後都會自動放到此目錄下,不用手動更改。

4. 進入解壓子目錄:

1 cd subversion-1.6.1

5. 執行 ./configure –prefix=/opt/subversion 進行配置設定並指明安裝目錄. 注意prefix前是兩個減號. 預設不帶BDB包, 所以預設使用的是FSFS模式. 若想使用BDB模式需另外下載BDB包.建議使用FSFS模式.兩種模式比較參考以下連結:

http://doc.iusesvn.com/show-21-1.html

指令簡介:configure命令用於檢查安裝平台和目標特徵,prefix用於指定路徑。

6. 執行 make 編譯.

7. 執行 make install 安裝.

8. 添加環境變數:

1 vi /etc/profile

在檔案最後加入:
SVNPATH=$PATH:/opt/subversion/bin
export SVNPATH

9. 測試SVN是否安裝成功,執行:

1 svnserve --version

如果顯示版本資訊, 則安裝成功.

第二章 配置

本系統採用為每個項目單獨建一版本庫的策略。設定檔,密碼檔案,存取控制檔案等都放在版本庫的conf目錄下。所以每次開始一個新項目都必須建立一個版本庫,並重新設定各設定檔。還有很重要的一條,要求各組員重新設定用戶端,包括伺服器版本庫路徑,本地路徑等資訊。

1. 建立版本庫目錄(可建立多個,建立庫後以下各項都需重新設定。注意區別安裝目錄與版本庫目錄,以下講的都是版本庫目錄)

1 mkdir –p /opt/svndata/repos

2. 建立svn版本庫(與上面目錄對應)

1 svnadmin create /opt/svndata/repos

執行此命令後svn自動在repos目錄下添加必須的設定檔.
注意:版本庫不同於一般的檔案夾, 直接在作業系統上建立檔案無法被SVN識別, 必須使用import等命令將檔案匯入版本庫.
此為svn內部指令,create用於建立版本庫。請使用svn help查看詳細說明。

3. 修改版本庫設定檔

1 vi /opt/svndata/repos/conf/svnserve.conf

各參數功能在設定檔的注釋中有說明, 此處配置如下:
[general]
anon-access = none # 使非授權使用者無法訪問
auth-access = write # 使授權使用者有寫入權限
password-db = /opt/svndata/repos/conf/pwd.conf # 指明密碼檔案路徑
authz-db = /opt/svndata/repos/conf/authz.conf # 存取控制檔案
realm = /opt/svndata/repos # 認證命名空間,subversion會在認證提示裡顯示,並且作為憑證緩衝的關鍵字。
其它採用預設配置. 各語句都必須頂格寫, 左側不能留空格, 否則會出錯.
其中pwd.conf 與 authz.conf 在建立版本庫時系統不會自動建立,需要自己建立。
指令簡介:這是svn設定檔的格式,請按照以上格式書寫。

4. 配置使用者

1 vi /opt/svndata/repos/conf/pwd.conf

輸入以下內容:
[users]
username1 = password1
username2 = password2
可以添加多個,此為使用者名稱密碼對。

5. 配置許可權
vi /opt/svndata/repos/conf/authz.conf
指令簡介:此設定檔採用“基於路徑的授權”策略,中括弧裡指定路徑,以下列出對各使用者的授權。包括唯讀r,讀寫rw。沒有列出的使用者,則不允許訪問。還可以對使用者分組,具體請參考svn手冊,以下是簡單例子:
[/opt/svndata/repos]
user1 = rw
user2 = r

6. 使用import匯入檔案
建立好的版本庫是空的,需要匯入工作目錄。

1 $ svnadmin create /usr/local/svn/newrepos
2 $ svnimport mytree file:///usr/local/svn/newrepos/some/project

但是在匯入後,用來的分類樹並沒有轉換成工作拷貝,為了開始工作,還是需要運行svn checkout匯出一個工作拷貝。因為匯入後,檔案在版本庫中是以特殊的形式存在db檔案夾中的,不能以明文的方式查看。必須使用svn checkout匯出工作複本(workcopy)才能以正常方式查看。

1 svn checkout file:///usr/local/svn/newrepos/some/project workcopy

7. 啟動服務
執行svnserve –d –r /opt/svndata/repos/ 啟動服務, 以deamon方式運行。
本系統採用svnserve方式, 這是小Team 專案的推薦方法. 這種方法維護最少, 配置最簡單.
指令簡介:此指令用於啟動svn服務,-d指明以守護模式運行,svn自動在3690連接埠監聽。3690是預設連接埠,可以使用“–listen-port=”或者“–listen-host=”來指定其它連接埠。-r選項用來指定svn服務的根目錄,這樣使用者就可以使用相對路徑訪問,而不用提供完整路徑。
使用以下命令檢出:(svnserver方式)

1 svn checkout svn://127.0.0.1/dir

以上為樣本。IP需要根據具體情況調整,dir為版本庫路徑,若在啟動時已指定則可省略。
版本庫資訊在版本庫檔案夾裡,所以要刪除版本庫只需要刪除版本庫所在的檔案夾即可。
另外工作複本只是自己維護的檔案夾,可以用Windows直接刪掉,對別人沒有影響。千萬不要使用版本庫的刪除命令,否則版本庫裡的內容也會被刪除。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.