CentOS搭建SVN服務器

一、環境

    系統:CentOS 7.0

    SVN:官網最新版(地址:https://tortoisesvn.net/downloads.html

二、爲方便測試,關閉防火牆和selinux

    

setenforce 0
systemctl stop firewalld

三、開始安裝

# 1、查看本機是否安裝過SVN
rpm -qa subversion
#如果有,則卸載
yum remove subversion

# 2、安裝SVN和其他服務
yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
#也可以只安裝SVN服務
yum install subversion -y

#3、確認安裝成功
cd /etc/httpd/modules
ls | grep svn
#結果是兩個so文件,mod_authz_svn.so 和 mod_dav_svn.so

#4、驗證版本
svnserve --version

四、創建代碼庫

#創建文件夾目錄用於存放
mkdir -p /opt/svn/repositories
#創建一個新的SVN倉庫,倉庫路徑爲上面的那個目錄
svnadmin create /opt/svn/repositories

五、修改配置文件

cd /opt/svn/repositories/conf

#authz:負責賬號權限的管理,控制賬號是否讀寫權限
#passwd:負責賬號和密碼的用戶名單管理
#svnserve.conf:svn服務器配置文件

#修改密碼配置文件
vi passwd
#################### 文件內容 ###########
[users]

# harry = harryssecret

# sally = sallyssecret
#格式:用戶名=用戶密碼
test=123456

#修改權限文件
vi authz
################## 文件內容 ###############
[groups]
#SVN目錄權限[/]代表根目錄
[/]
test=rw

#修改配置文件
vi svnserve.conf
################## 文件內容 ###############
[general]
#匿名用戶沒有任何權限
anon-access = none
#認證用戶具有寫權限
auth-access = write
#用戶的密碼文件
password-db = /opt/svn/repositories/conf/passwd
#用戶的信息文件
authz-db = /opt/svn/repositories/conf/authz

#啓動SVN
svnserve -d -r /opt/svn/repositories
#查看進程
ps -ef|grep svn|grep -v grep
#查看端口,可以通過:yum install net-tools 安裝netstat命令
netstat -ln |grep 3690
#停止服務,可以通過:yum install psmisc 安裝killall命令
killall svnserve
#啓動服務
svnserve -d -r /opt/svn/repositories

六、客戶端連接

#1、從上面的連接下載安裝客戶端
#2、輸入地址查看
svn://ip地址:3690/xxxx

七、擴展

1、小烏龜官網打開後可以下載中文語言包,在頁面下方

 

客戶端安裝完畢後,直接安裝這個語言包,安裝完之後右鍵設置

2、svnserve.conf 文件,部分說明

anon-access: 控制非鑑權用戶訪問版本庫的權限,取值範圍爲"write"、"read"和"none"。 即"write"爲可讀可寫,"read"爲只讀,"none"表示無訪問權限。 缺省值:read

auth-access: 控制鑑權用戶訪問版本庫的權限。取值範圍爲"write"、"read"和"none"。 即"write"爲可讀可寫,"read"爲只讀,"none"表示無訪問權限。 缺省值:write

authz-db: 指定權限配置文件名,通過該文件可以實現以路徑爲基礎的訪問控制。 除非指定絕對路徑,否則文件位置爲相對conf目錄的相對路徑。 缺省值:authz

3、目錄權限控制文件:/opt/svn/repositories/conf/authz

[/]
   admin=r    #admin用戶有根目錄權限
   thinker=r
   [/webphp]
    admin=r
    thinker=rw    #thinker用戶對/opt/svn/repo/webphp目錄具有讀寫權限

4、查看svn安裝目錄

rpm -ql subversion

5、/opt/svn/repositories/conf/svnserve.conf 文件中的  realm  屬性

網上查找資料說這個屬性是:指定版本庫的認證域,即在登錄時提示的認證域名稱。

有說吧 #realm = My First Repository 的註釋去掉即可

也有說 realm = 192.168.4.74 要寫自己服務器IP的

我這裏沒寫IP也沒取消註釋,訪問暫時正常,沒遇到什麼問題

6、windows搭建SVN服務器,參考以下連接

https://blog.csdn.net/weixin_37657720/article/details/79501507

發佈了81 篇原創文章 · 獲贊 15 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章