Linux下SVN安裝配置記錄

2021-08-30 19:00:30 字數 2999 閱讀 2937

第一章 安裝

1. 採用原始檔編譯安裝。原始檔共兩個,為:

subversion-1.6.1.tar.gz  (subversion 原始檔)

subversion-deps-1.6.1.tar.gz  (subversion依賴檔案)

注意檔案版本必須一致,否則很容易產生各種奇怪的問題.

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

tar xfvz subversion-1.6.1.tar.gz

tar xfvz subversion-deps-1.6.1.tar.gz

指令簡介:tar 為解壓命令,xfvz為tar命令的引數,用於解壓tar.gz格式壓縮的檔案。

3. 解壓後生成 subversion-1.6.1 子目錄,兩個壓縮包解壓後都會自動放到此目錄下,不用手動更改。

4. 進入解壓子目錄:

cd subversion-1.6.1

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

6. 執行 make 編譯.

7. 執行 make install 安裝.

8. 新增環境變數:

vi /etc/profile

在檔案最後加入:

svnpath=$path:/opt/subversion/bin

export svnpath

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

svnserve –version

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

第二章 配置

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

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

mkdir –p /opt/svndata/repos

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

svnadmin create /opt/svndata/repos

執行此命令後svn自動在repos目錄下新增必須的配置檔案.

注意:版本庫不同於一般的資料夾, 直接在作業系統上新建檔案無法被svn識別, 必須使用import等命令將檔案匯入版本庫.

此為svn內部指令,create用於新建版本庫。請使用svn help檢視詳細說明。

3. 修改版本庫配置檔案

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. 配置使用者

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匯入檔案

新建好的版本庫是空的,需要匯入工作目錄。

$ svnadmin create /usr/local/svn/newrepos

$ svnimport mytree file:///usr/local/svn/newrepos/some/project

但是在匯入後,用來的目錄樹並沒有轉換成工作拷貝,為了開始工作,還是需要執行svn checkout匯出乙個工作拷貝。因為匯入後,檔案在版本庫中是以特殊的形式存在db資料夾中的,不能以明文的方式檢視。必須使用svn checkout匯出工作副本才能以正常方式檢視。

7. 啟動服務

執行svnserve –d –r /opt/svndata/repos/ 啟動服務, 以deamon方式執行。

本系統採用svnserve方式, 這是小團隊專案的推薦方法. 這種方法維護最少, 配置最簡單.

指令簡介:此指令用於啟動svn服務,-d指明以守護模式執行,svn自動在3690埠監聽。3690是預設埠,可以使用「–listen-port=」或者「–listen-host=」來指定其它埠。-r選項用來指定svn服務的根目錄,這樣使用者就可以使用相對路徑訪問,而不用提供完整路徑。

使用以下命令檢出:(svnserver方式)

svn checkout svn:

以上為示例。ip需要根據具體情況調整,dir為版本庫路徑,若在啟動時已指定則可省略。

版本庫資訊在版本庫資料夾裡,所以要刪除版本庫只需要刪除版本庫所在的資料夾即可。

另外工作副本只是自己維護的資料夾,可以用windows直接刪掉,對別人沒有影響。千萬不要使用版本庫的刪除命令,否則版本庫里的內容也會被刪除。

Linux下SVN安裝配置記錄

第一章 安裝 1.採用原始檔編譯安裝。原始檔共兩個,為 subversion 1.6.1.tar.gz subversion 原始檔 subversion deps 1.6.1.tar.gz subversion依賴檔案 注意檔案版本必須一致,否則很容易產生各種奇怪的問題.2.上傳以上兩個檔案到伺服...

Linux下SVN安裝配置記錄

測試svn是否安裝成功,執行 svnserve version 如果顯示版本資訊,則安裝成功.第二章 配置 本系統採用為每個專案單獨建一版本庫的策略。配置檔案,密碼檔案,訪問控制檔案等都放在版本庫的conf目錄下。所以每次開始乙個新專案都必須新建乙個版本庫,並重新配置各配置檔案。還有很重要的一條,要...

Linux下SVN安裝配置記錄

第一章 安裝 1.採用原始檔編譯安裝。原始檔共兩個,為 subversion 1.6.6.tar.gz subversion 原始檔 subversion deps 1.6.6.tar.gz subversion依賴檔案 注意檔案版本必須一致,否則很容易產生各種奇怪的問題.2.上傳以上兩個檔案到伺服...