搭建與使用SVN服務器
阿新 • • 發佈:2018-08-01
訪問權限 png 訪問控制 thead RoCE 權限 epo 初始 密碼 SVN簡介:
SVN是一個開源的版本控制系統,SVN管理著隨時間改變的數據。這些數據放置在一個中央資料檔案庫中,這個檔案庫很像一個普通的文件服務器,不過它會記住每一次文件的改動。
系統環境:
主機 | 操作系統 | IP地址 |
---|---|---|
SVN Server | CentOS 7.4 x86_64 | 192.168.100.135 |
client | CentOS 7.4 x86_64 | 192.168.100.140 |
搭建SVN服務器步驟如下:
1.關閉防火墻及Selinux
setenforce 0
systemctl stop firewalld
2.Yum安裝svn軟件包
yum install subversion -y
查看版本
svnserve --version
3.創建倉庫repo
mkdir -p /opt/svn/repo #創建目錄
svnadmin create /opt/svn/repo #創建一個新的倉庫
4.查看倉庫目錄
ll !$
5.編輯svn服務配置文件svnserve.conf
svn服務配置文件為版本庫目錄中的文件conf/svnserve.conf。該文件僅由一個[general]配置段組成。
[general] anon-access = none #匿名用戶沒有任何權限 auth-access = write #認證用戶具有寫權限 password-db = /opt/svn/repo/conf/passwd #用戶的密碼文件 authz-db = /opt/svn/repo/conf/authz #用戶的信息文件 ..... #省略部分內容
anon-access: 控制非鑒權用戶訪問版本庫的權限,取值範圍為"write"、"read"和"none"。 即"write"為可讀可寫,"read"為只讀,"none"表示無訪問權限。 缺省值:read
auth-access: 控制鑒權用戶訪問版本庫的權限。取值範圍為"write"、"read"和"none"。 即"write"為可讀可寫,"read"為只讀,"none"表示無訪問權限。 缺省值:write
- authz-db: 指定權限配置文件名,通過該文件可以實現以路徑為基礎的訪問控制。 除非指定絕對路徑,否則文件位置為相對conf目錄的相對路徑。 缺省值:authz
6.創建賬戶密碼文件
用戶密碼文件由svnserve.conf的配置項password-db指定,缺省為conf目錄中的passwd。該文件僅由一個[users]配置段組成。
cd /opt/svn/repo
vim conf/passwd
[users]
admin = admin #格式:用戶名=用戶密碼
thinker = 123456 #添加用戶thinker
7.創建權限配置文件
權限配置文件由svnserve.conf的配置項authz-db指定,缺省為conf目錄中的authz。該配置文件由一個[groups]配置段和若幹個版本庫路徑權限段組成。
cd /opt/svn/repo
vim conf/authz
[/]
admin=r
thinker=r
[/webphp]
admin=r
thinker=rw #thinker用戶對/opt/svn/repo/webphp目錄具有讀寫權限
8.啟動SVN服務
svnserve -d -r /opt/svn/repo #關閉通過Kill PID
-r: 配置方式決定了版本庫訪問方式。
- --listen-port: 指定SVN監聽端口,不加此參數,SVN默認監聽3690
9.初始化SVN目錄
mkdir /opt/svn/repo/webphp
svn import webphp file:///opt/svn/repo/webphp -m "初始化SVN目錄" #導入到本地webphp
使用SVN客戶端操作
1.Yum安裝svn軟件包
yum install subversion -y
2.創建/var/www/html目錄,本地同步SVN倉庫的內容
mkdir -p /var/www/html
cd /var/www/html
svn co svn://192.168.100.135/webphp
3.測試
1.在SVN服務端webphp目錄下創建一個文件夾,再進行初始化。
2.在SVN客戶端/var/www/html本地再次同步服務端倉庫的內容。
搭建與使用SVN服務器