SVN 建立版本庫

使用svn命令建立資源庫

[itread01@centos6 ~]# svnadmin create /opt/svn/itread0101
[itread01@centos6 ~]# ll /opt/svn/itread0101/
total 24
drwxr-xr-x 2 root root 4096 2016/08/23 16:31:06 conf
drwxr-sr-x 6 root root 4096 2016/08/23 16:31:06 db
-r--r--r-- 1 root root    2 2016/08/23 16:31:06 format
drwxr-xr-x 2 root root 4096 2016/08/23 16:31:06 hooks
drwxr-xr-x 2 root root 4096 2016/08/23 16:31:06 locks
-rw-r--r-- 1 root root  229 2016/08/23 16:31:06 README.txt

進入/opt/svn/itread0101/conf目錄 修改預設配置檔案配置,包括svnserve.conf、passwd、authz 配置相關使用者和許可權。

1、svn服務配置檔案svnserve.conf

svn服務配置檔案為版本庫目錄中的檔案conf/svnserve.conf。該檔案僅由一個[general]配置段組成。

[general]
anon-access = none
auth-access = write
password-db = /home/svn/passwd
authz-db = /home/svn/authz
realm = tiku 
  • anon-access: 控制非鑑權使用者訪問版本庫的許可權,取值範圍為"write"、"read"和"none"。 即"write"為可讀可寫,"read"為只讀,"none"表示無訪問許可權。 預設值:read

  • auth-access: 控制鑑權使用者訪問版本庫的許可權。取值範圍為"write"、"read"和"none"。 即"write"為可讀可寫,"read"為只讀,"none"表示無訪問許可權。 預設值:write

  • authz-db: 指定許可權配置檔名,通過該檔案可以實現以路徑為基礎的訪問控制。 除非指定絕對路徑,否則檔案位置為相對conf目錄的相對路徑。 預設值:authz

  • realm: 指定版本庫的認證域,即在登入時提示的認證域名稱。若兩個版本庫的 認證域相同,建議使用相同的使用者名稱口令資料檔案。 預設值:一個UUID(Universal Unique IDentifier,全域性唯一標示)。

2、使用者名稱口令檔案passwd

使用者名稱口令檔案由svnserve.conf的配置項password-db指定,預設為conf目錄中的passwd。該檔案僅由一個[users]配置段組成。

[users]配置段的配置行格式如下:

<使用者名稱> = <口令>
[users]
admin = admin
thinker = 123456

3、許可權配置檔案

許可權配置檔案由svnserve.conf的配置項authz-db指定,預設為conf目錄中的authz。該配置檔案由一個[groups]配置段和若干個版本庫路徑許可權段組成。

[groups]配置段中配置行格式如下:

<使用者組> = <使用者列表>

版本庫路徑許可權段的段名格式如下:

[<版本庫名>:<路徑>] 
[groups]
g_admin = admin,thinker

[admintools:/]
@g_admin = rw
* =

[test:/home/thinker]
thinker = rw
* = r

本例是使用svnserve -d -r /opt/svn 以多庫svnserve方式啟動SVN,所以URL:svn://192.168.0.1/itread0101