前言:在此之前已經有很多文章關於如何在linux(Centos7)搭建SVN服務,這裏還是在寫一下,做個筆記!
系統環境:centos7.2
第一步:通過yum命令安裝svnserve,命令如下:
# 此命令會全自動安裝svn服務器相關服務和依賴,安裝完成會自動停止命令運行
# 查看安裝位置 rpm -ql subversion
yum -y install subversion
第二步:創建版本庫目錄(此僅爲目錄,爲後面創建版本庫提供存放位置
# 選擇在var路徑下創建版本庫,當前處於根目錄下:
mkdir /var/svnRepos
第三步:創建svn版本庫
# 在第二步建立的路徑基礎上,創建版本庫,命令如下:
# xxxx 自定義命名,可以是你的項目工程名
svnadmin create /var/svnrepos/xxxx
第四步:修改配置
# 進入新建的版本庫目錄下
cd /var/svnrepos/xxxx
# 進入到conf目錄
conf目錄下,一共存放三份重要的配置文件,如下:
authz:負責賬號權限的管理,控制賬號是否讀寫權限
passwd:負責賬號和密碼的用戶名單管理
svnserve.conf:svn服務器配置文件
- 編輯 authz 文件
在末尾處添加 以上內容
[/]:表示根目錄,即 /var/svnrepository
yunpeng= rw:表示用戶yunpeng對根目錄具有讀寫權限。
- 編輯 passwd 文件
- 編輯 svnserve.conf 文件(注意:一定要頂格寫)
anon-access = none:表示禁止匿名用戶訪問。
auth-access = write:表示授權用戶擁有讀寫權限。
password-db = passswd:指定用戶名口令文件,即 passwd 文件。
authz-db = authz:指定權限配置文件,即 authz 文件。
realm = /var/svnrepos:指定認證域,即 /var/svnrepos 目錄。
***這裏提示一下,在centos7.6版本上,會出現無論如何就是連不上svn服務,這裏把 authz-db = authz 註釋掉,realm = My First Repository 去掉註釋就好,無需修改***
第五步:防火牆開啓(這裏以iptable防火墻爲例)
# 多數情況下服務器安裝完成,配置完成後,無法連接svn服務器,均是防火牆問題【注意:如果是阿里雲,騰訊雲的服務器,還需在安全組添加端口開啓規則,如果你可以,可以跳過
vi /etc/sysconfig/iptables
#添加配置信息
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
#保存退出
systemctl restart iptables.service
#重啓防火牆使配置生效
第六步:啓動服務器
svnserve -d -r /var/svnrepository
啓動後,可用ps -aux查看服務啓動是否成功
ps -ef | grep 'svnserve'
七:客戶端訪問svn服務器
# 打開瀏覽器,輸入地址:svn://ip地址:3690/xxxx (iP地址爲你linux的ip,xxxx爲前文創建的版本庫名稱,3690爲svn默認端口)
# 彈出輸入用戶名和密碼,輸入即可訪問
或者 在linux服務器輸入命令測試:
svn co svn://ip地址:3690/xxxx