歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux下建立svn工程

Linux下建立svn工程

日期:2017/2/28 16:00:35   编辑:Linux教程

1 連接方式說明

svn提供的訪問方式有:

file:///本地路徑/to/svnrepo/ //訪問本地磁盤

http://host/to/svnrepo/ //通過配置subversion的apache服務器的webDAV協議

https://host/to/svnrepo/ //與http相似,但是包括ssl加密

svn://host/to/svnrepo/ //通過subversion自定義的協議

svn+ssh://host/to/svnrepo/ //與svn相似,但通過SSH封裝

2 認證方式說明

svnserve可以使用兩種認證方式,一種是自身內置的認證,通過passwd文件配置授權的用戶名和密碼,配置較為簡單,參考2.4.2節。另外一種是SSH認證,通過svn+ssh方式連接,配置較為復雜。

2.1 內置方式的配置

(1)修改/svn_project/hpss_monitor /conf/svnserve.conf文件,在general中加入以下幾行:

anon-access = none // 未認證的用戶沒有任何訪問權限

auth-access = write // 認證的用戶有寫權限

password-db = passwd // 認證文件為conf目錄下的passwd 文件

(2)修改conf目錄下的passwd 文件 :

在[users]節下添加用戶名和密碼,例如,用戶名為a,密碼為123,格式如下:

[users]

a = 123

2.2 ssh方式認證的配置

假設已經創建了工程/svn_project/hpss_monitor

注意:工程目錄最好不要放在root目錄下,例如/root/svn_project/hpss_monitor,因為通過ssh方式認證的一般用戶沒有root權限,無法訪問root下的文件夾,除非主動降低root目錄的訪問級別。

1) 創建系統賬戶

useradd fify ; 添加fify用戶

groupadd svn ; 添加svn用戶組

usermod -a -G svn fify ; 將fify用戶添加到svn用戶組

2) 為用戶組賦予權限

chown -R root:svn /svn_project/test

chmod -R g+rws /svn_project/test /*給svn組賦予讀寫權限,可以根據需要更改相應權限*/

chmod -R o-rwx /svn_project/test /*刪除其他無關人員的讀、寫、執行權限,默認情況下可能其他人有讀權限*/

3) 在工程中配置權限

修改/svn_project/test /conf/svnserve.conf文件,在general中加入以下幾行:

anon-access = none // 未認證的用戶沒有任何訪問權限

auth-access = write // 認證的用戶有寫權限

authz-db = authz // 認證文件為conf目錄下的authz文件

修改/svn_project/test /conf/authz文件(如果沒有則創建),在其中加入:

[/] // 訪問權限為本資源的根目錄(以及以下目錄)

fify = rw // fify用戶的訪問權限為“讀+寫”

3 創建工程步驟說明

3.1 創建工程

執行命令:

#svnadmincreate /svn_project/test

其中,/svn_project/test 是單個工程目錄,/svn_project是自定義的svn工程的根目錄。其中根目錄需系統中存在,工程目錄test 由svnadmin創建。

命令完成之後,test 目錄裡會有多個文件夾和文件。

3.2 修改配置文件

根據認證方式作相應的配置,參考第2節。

3.3 開啟服務

啟動svn服務:

#svnserve-d -r /svn_project

其中-d表示在後台運行,-r指定服務器的根目錄,這樣訪問服務器時就可以直接用“svn://服務器ip/工程項目名”來訪問了。我所遇到的情況是訪問路徑必須寫全路徑,比如在此為“svn://服務器ip/svn_project/test ”

Copyright © Linux教程網 All Rights Reserved