SVN 安裝與使用詳解

目錄

一、單庫SVN安裝

1.準備

2.安裝

3.啓動與配置

二、多庫svnserve與單庫SVNserve 不同

1.單庫SVNserve:-r直接指定到版本庫

2.多庫SVNserve:指定到版本庫的上級目錄

3.當然要想使用多庫SVN,在創建版本庫的時候要創建的藝術一點

4.多庫可以使用同一個 passwd 和 auth

三、配置文件解析

1.svnserve.conf

2.passwd

3.authz

四、使用svn客戶端通過svn協議訪問URL

1.下載tortoiseSVN

2.安裝,點點點就行了

3.漢化

4.使用客戶端


一、單庫SVN安裝

1.準備

(1)大多數 GNU/Linux 發行版系統自帶了Subversion ,所以它很有可能已經安裝在你的系統上了。可以使用下面命令檢查是否安裝了。

svn --version

(2)如果 Subversion 客戶端沒有安裝,命令將報告svn命令找不到的錯誤。

[runoob@centos6 ~]$ svn --version bash: svn: command not found

2.安裝

(1)我們可以使用 yum install subversion 命令進行安裝。

yum install subversion -y

(2)安裝成功之後,執行 svn --version 命令。

svn --version

3.啓動與配置

由於-r 配置方式的不一樣,SVN啓動就可以有兩種不同的訪問和配置方式:單庫SVNserve方式或多庫svnserve方式

此着重講解單庫svnserve方式:

(1)手動新建版本庫目錄

mkdir /app/svn

(2)利用svn命令創建版本庫

svnadmin create /app/svn/

(3)查看版本庫目錄

[[email protected] ~]# ll /app/svn

drwxr-xr-x 2 admin admin 4096 Sep 28 16:58 conf

drwxr-sr-x 6 admin admin 4096 Sep 29 14:38 db

-r--r--r-- 1 admin admin 2 Sep 6 14:33 format

drwxr-xr-x 2 admin admin 4096 Sep 6 14:33 hooks

drwxr-xr-x 2 admin admin 4096 Sep 6 14:33 locks

-rw-r--r-- 1 admin admin 229 Sep 6 14:33 README.txt

(4)配置 conf/svnserve.conf

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

vim /conf/svnserve.conf

[general]

anon-access = none

auth-access = write

password-db = /app/svn/conf/passwd

authz-db = /app/svn/conf/authz

realm = tydic

(5)配置 conf/passwd

用戶名口令文件由svnserve.conf的配置項password-db指定,缺省爲conf目錄中的passwd。該文件僅由一個[users]配置段組成

[users]

#用戶名=密碼

admin = admin@tydic

wangxin = 111

li=222222

wan=33333

tawe=4444444

(6)配置 conf/authz

權限配置文件由svnserve.conf的配置項authz-db指定,缺省爲conf目錄中的authz。該配置文件由一個[groups]配置段和若干個版本庫路徑權限段組成。

[groups]

tydic=wangxin,wan,li 
[/]

admin=rw * = r

[/總部業務線]

admin=rw

@tydic=rw

*=

(7)使用svnserve 啓動服務

svnserve -d -r /app/svn --listen-port 3690

-r: 配置方式決定了版本庫訪問方式。

--listen-port: 指定SVN監聽端口,不加此參數,SVN默認監聽3690

(8)通過客戶端tortoiseSVN訪問URL

svn://10.124.164.162:3690/

 

二、多庫svnserve與單庫SVNserve 不同

1.單庫SVNserve:-r直接指定到版本庫

svnserve -d -r /app/svn/db1

在這種情況下,一個svnserve只能爲一個版本庫工作。

authz配置文件中對版本庫權限的配置應這樣寫:
 

[groups]

admin=wangxin

dev=zhangqi

[/]

@admin=rw

@dev=r

使用類似這樣的URL:svn://*.*.*.*/ 即可訪問db1版本庫.

2.多庫SVNserve:指定到版本庫的上級目錄

svnserve -d -r /opt/svn

這種情況,一個svnserve可以爲多個版本庫工作

authz配置文件中對版本庫權限的配置應這樣寫:

[groups]

admin=wangxin

dev=zhangqi

[db1:/]

@admin=rw

@dev=r

[db2:/]

@admin=rw

@dev=r

#如果此時你還用[/],則表示所有庫的根目錄,同理,[/src]表示所有庫的根目錄下的src目錄。

使用類似這樣的URL:svn://*.*.*.*/db1 即可訪問db1版本庫。

3.當然要想使用多庫SVN,在創建版本庫的時候要創建的藝術一點

有步驟1,和步驟2 的前提是:(這和SVN單庫安裝並不一樣)

svnadmin create /app/svn/db1

svnadmin create /app/svn/db2

4.多庫可以使用同一個 passwd 和 auth

通過版本庫的 svnserve.conf 配置(須爲絕對路徑)

password-db = /app/svn/passwd

authz-db = /app/svn/authz

 

三、配置文件解析

1.svnserve.conf

  • 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

#用戶名=密碼

3.authz

(1)權限具備繼承性:子目錄會自動擁有父目錄的權限

(2)*= : 代表除上述用戶和組外,其他用戶對該目錄無讀寫權限

(3)*=r :代表除上述用戶和組外,其他用戶對該目錄只有讀權限

(4)無*先後順序 一說:也就是說,如果我將本段配置的 ``* =`` 這一行挪到最前面,完全不影響整個配置的最終效果。

四、使用svn客戶端通過svn協議訪問URL

1.下載tortoiseSVN

https://tortoisesvn.net/downloads.html

2.安裝,點點點就行了

3.漢化

下載漢化包,點點點

標題

4.使用客戶端

在桌面右擊,點開版本庫瀏覽器,輸入URL,使用用戶名和密碼即可登錄使用

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章