檢查系統是否已經安裝了SVN
兩個命令使用任何一個都行,如果返回如下內容,說明已經安裝
[root@localhost ~]# svn --version
svn, version 1.7.14 (r1542130)
compiled Apr 11 2018, 02:40:28
Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
[root@localhost ~]# rpm -qa|grep subversion
subversion-libs-1.7.14-14.el7.x86_64
subversion-1.7.14-14.el7.x86_64
安裝SVN
如果系統沒有安裝SVN,通過下面命令安裝
[root@localhost ~]# yum install subversion -y
創建SVN的目錄和版本庫
假設版本庫名字是repo
[root@localhost ~]# mkdir /var/svn
[root@localhost ~]# svnadmin create /var/svn/repo
創建用戶和密碼
假設有一個管理員用戶admin,兩個開發人員用戶dev1和dev2,一個測試人員用戶test,密碼都是123456
[root@localhost ~]# cd /var/svn/repo/conf
[root@localhost conf]# ll
total 12
-rw-r--r--. 1 root root 1162 Feb 26 13:04 authz
-rw-r--r--. 1 root root 367 Feb 26 13:00 passwd
-rw-r--r--. 1 root root 3082 Feb 26 13:06 svnserve.conf
[root@localhost conf]# vim passwd
[users]
admin = 123456
dev1 = 123456
dev2 = 123456
test = 123456
設置目錄訪問權限
假設repo版本庫的根目錄admin可以讀寫,其他用戶只讀,根目錄下code目錄開發人員可以讀寫,根目錄下test目錄測試人員可以讀寫
[root@localhost conf]# vim authz
[groups]
develop = dev1,dev2
[/]
admin = rw
* = r
[/code]
@develop = rw
[/test]
test = rw
修改SVN服務配置文件
假設匿名用戶無權訪問,把anon-access的值設為none,去掉行首的注釋符 #。
假設授權用戶可以讀寫,把auth-access 的值設為write,去掉行首的注釋符 #。
假設用戶密碼文件是默認的passwd,去掉password-db = passwd行首的注釋符 #。
假設權限控制文件是默認的authz,去掉authz-db = authz行首的注釋符 #。
[root@localhost conf]# vim svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
關閉selinux
修改selinux的配置文件,把SELINUX的值改為disabled
[root@localhost conf]# vim /etc/selinux/config
SELINUX=disabled
SELINUXTYPE=targeted
[root@localhost conf]# setenforce 0
setenforce: SELinux is disabled
啟動SVN服務,查詢服務狀態并設置開機啟動服務
[root@localhost conf]# systemctl start svnserve
[root@localhost conf]# systemctl status svnserve
● svnserve.service - Subversion protocol daemon
Loaded: loaded (/usr/lib/systemd/system/svnserve.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2020-02-26 15:00:05 CST; 3s ago
Process: 7552 ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid $OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 7553 (svnserve)
CGroup: /system.slice/svnserve.service
└─7553 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /var/svn
Feb 26 15:00:05 localhost.localdomain systemd[1]: Starting Subversion protocol daemon...
Feb 26 15:00:05 localhost.localdomain systemd[1]: Started Subversion protocol daemon.
[root@localhost conf]# systemctl enable svnserve
防火墻允許SVN服務的3690端口
[root@localhost conf]# firewall-cmd --add-port=3690/tcp --zone=public --permanent
success
[root@localhost conf]# firewall-cmd --reload
success
SVN客戶端電腦測試服務器
假設服務器的IP地址是192.168.8.128,版本庫名是repo
版本庫URL填 svn://192.168.8.128/repo/
最后編輯于 :2020.02.26 15:11:36
?著作權歸作者所有,轉載或內容合作請聯系作者 平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。