1. 安裝linux
centos(我這裏使用的是CentOS7)下yum命令便可方便的完成安裝shell
$ sudo yum install subversion
測試安裝是否成功:vim
$ svnserve --version
2. 創建版本庫centos
建立svn數據目錄(subversion默認是把/var/svn做爲數據根目錄的,開機啓動默認也是從這裏):tcp
$ sudo mkdir -p /var/svn
建立版本庫:svn
$ sudo svnadmin create /var/svn/wangwa
若是刪除版本庫:測試
$ sudo rm -rf /var/svn/wangwa
3. 配置svn配置文件centos7
每一個版本庫建立以後都會生成svnserve.conf主要配置文件。編輯它:spa
$ sudo vim /var/svn/wangwa/conf/svnserve.conf
編輯示例:code
[general] anon-access = none #控制非鑑權用戶訪問版本庫的權限 auth-access = write #控制鑑權用戶訪問版本庫的權限 password-db = passwd #指定用戶名口令文件名 authz-db = authz #指定權限配置文件名 realm = wangwa #指定版本庫的認證域,即在登陸時提示的認證域名稱
4. 編輯svn用戶配置文件
sudo vim /var/svn/wangwa/conf/passwd
編輯示例:
[users] admin = admin #用戶,密碼 fuhd = fuhd #用戶,密碼 test = test #用戶,密碼
5. 編輯svn權限控制配置文件
sudo vim /var/svn/wangwa/conf/authz
編輯示例:
[groups] admin = admin #admin爲用戶組,等號以後的admin爲用戶 test = fuhd,test [wangwa:/] #表示根目錄(/var/svn/wangwa),wangwa: 對應前面配置的realm = wangwa @admin = rw #表示admin組對根目錄有讀寫權限,r爲讀,w爲寫 [wangwa:/test] #表示test目錄(/var/svn/wangwa/test) @test = rw #表示test組對test目錄有讀寫權限
6. 啓動,查看和中止SVN服務
啓動SVN服務:
# -d : 守護進程 -r : svn數據根目錄 $ sudo svnserve -dr /var/svn #用root權限啓動
查看SVN服務:
$ ps aux|grep svnserve #默認端口爲:3690
7. 配置防火牆端口
首先要明確CentOS7的默認防火牆爲firewallD。subversion的默認端口爲3690,若是沒有打開會報錯:
$ sudo firewall-cmd --permanent -add-port=3690/tcp $ sudo firewall-cmd --reload
8. 設置開機啓動
在centos7, 設置開機啓動:
$ sudo systemctl enable svnserve.service #注意:根目錄必須是/var/svn 這樣才能設置成功!!
#設置開機啓動後就能夠按下面的方式開啓或中止服務了 $ sudo systemctl start svnserve.service $ sudo systemctl stop svnserve.service
保存退出,重啓並從客戶端進行測試。若是報這樣的錯:svn: E204900: Can't open file '/var/svn/wangwa/format': Permission denied的錯誤。那就是與SELinux有關係,目前我還不太會用SELinux,那就先把SELinux關閉吧,後面學會了,回過頭來再改這一段!!!!:
臨時關閉:
$ sudo setenforce 0
永久關閉:
$ sudo vim /etc/sysconfig/selinux
修改:
SELINUX = disable #值修改成disable.