歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

Linux(Centos)快速搭建SVN

前言
項目中源碼或者文檔需要進行管理與版本記錄,歷數此類工具VSS、CVS、SVN、GIT等等,有非常多的版本控制系統。SVN現在還是很常見,把筆記總結搬上博客,SVN這個再不放以後估計只能寫GIT的搭建了。

一.SVN簡介

SVN是Subversion的簡稱,是一個開放源代碼的版本控制系統,相較於RCS、CVS,它采用了分支管理系統,它的設計目標就是取代CVS。互聯網上很多版本控制服務已從CVS遷移到Subversion。說得簡單一點SVN就是用於多個人共同開發同一個項目,共用資源的目的。
SVN服務器有2種運行方式:獨立服務器和借助apache運行。兩種方式各有利弊,用戶可以自行選擇。 下載網址:https://subversion.apache.org/packages.html
本文主要對Centos進行SVN服務器搭建,持續集成Jenkins常需要SVN命令方式執行一些操作。
如果你喜歡更快更簡的方式,請用WindowS版本:VisualSVN Server ,在以上地址頁面的最下方下載。

二.安裝SVN(Linux)


1.安裝SVN

yum -y install subversion
注:想快速安裝就用Root用戶

2.查看安裝內容與位置

rpm -ql subversion

3.建立SVN根目錄

mkdir /data/svn

4.新建版本庫:TestCode

svnadmin create /data/svn/TestCode
注:執行完後,/data/svn/TestCode目錄下文件說明
README.txt 版本庫的說明文件
conf 配置文件件夾(後續操作最多的文件夾)
db SVN數據文件文件夾
format 當前版本庫的版本號
hooks SVN的鉤子腳本文件夾
locks SVN的文件鎖相關的文件夾

4.TestCode庫添加用戶、分配權限

A.配置SVN
vim /data/svn/TestCode/conf/svnserve.conf
anon-access=none #去除文件前的注釋,將read改為none,防止匿名訪問
auth-access=write #去除文件前的注釋
password-db=passwd #去除文件前的注釋
authz-db = authz #去除文件前的注釋,訪問權限配置,非常重要,不打開,分組權限不生效
B.添加訪問TestCode用戶
vim /data/svn/TestCode/conf/passwd
[users]
# harry = harryssecret
# sally = sallyssecret
albert=123456
findyou=123456
abc=123456
love=123456注:添加了四個用戶
C.設置添加的用戶權限vim /data/svn/TestCode/conf/authz
[groups]
g_qa=albert,findyou
g_read=abc
[TestCode:/] #[<版本庫名>:<路徑>]
@g_qa=rw #<用戶組> = <權限> ,第一種方式
@g_read=r #<用戶名> = <權限> ,第二種方式
love=r
*= #* = <權限>,第三種方式,*為任意用戶,此為禁止匿名用戶訪問注:albert,findyou可讀可寫,abc、love可讀,其他不可訪問。
D.防火牆開放SVN端口通行iptables -A INPUT -p tcp --dport 3690 -j ACCEPT
E.開啟SVN服務svnserve -d -r /data/svn注:命令寫入腳本,開機執行,如需要停止SVN,用 “ps -ef|grep svn” 查找到進程;再 " kill -9 進程號 " 即可。
F.SVN客戶端訪問
svn://IP/TestCode例:

如轉載請保留出處與作者姓名Findyou,謝謝!
Copyright © Linux教程網 All Rights Reserved