SVN 創建版本庫


使用svn命令創建資源庫

[zaixian@centos6 ~]# svnadmin create /opt/svn/zaixian01
[zaixian@centos6 ~]# ll /opt/svn/zaixian01/
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/zaixian01/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/zaixian01