CentOS 7下搭建SVN服務器&多項目教程


windows下使用到的操作軟件:
putty、TortoiseSVN

安裝步驟:
1.使用 putty 連接Linux終端后下載安裝SVN服務端

yum install subversion

2.查看SVN服務端安裝版本

svnserve --version

 3.創建SVN版本庫目錄,project1、project2分別為“項目1”、“項目2”

mkdir -p /home/svn/project1
mkdir -p /home/svn/project2

 4.創建版本庫

svnadmin create /home/svn/project1
svnadmin create /home/svn/project2

執行了這兩句命令之后會在/home/svn/project1、/home/svn/project2目錄下生成如下這些文件:conf db format hooks locks README.txt

 

 

 5.創建版本庫公共配置文件存放目錄,隨便打開一個項目版本庫復制一份conf目錄(即:/home/svn/project1/conf)到 /home/svn 目錄下

cp -r /home/svn/project1/conf /home/svn/conf

 

 

 6.清空剛才創建的項目版本庫conf目錄,刪除庫的所有配置文件

rm -f /home/svn/project1/conf/*
rm -f /home/svn/project2/conf/*

 

 

 

 7.進入/home/svn/conf目錄(進行版本庫配置)

cd /home/svn/conf
authz         - 文件是權限控制文件
passwd        - 是帳號密碼文件
svnserve.conf - SVN服務配置文件

 

 

 

 8.設置賬號密碼 vi passwd
在[users]塊中添加用戶和密碼,格式:帳號=密碼,如下

user1 = 123456
user2 = 123456
user3 = 123456
user4 = 123456
user5 = 123456

 

 

 9.設置用戶權限&項目分組 vi authz
在[groups]塊中添加項目分配用戶,格式:項目目錄名=用戶名(賬號),如下

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
project1 = user1,user2,user3,user4,user5
project2 = user1,user2,user3

 

在末尾添加如下代碼:

[/]
* = r
root = rw

[project1:/]
@project1 = rw

[project2:/]
@project2 = rw

 

@project2 = rw 中的"rw"意思是[groups]下定義的用戶對指定的Project版本庫有讀寫權限

10.修改svnserve.conf文件 vi svnserve.conf
打開下面的幾個注釋,並修改如下:

   anon-access = none #匿名用戶可讀(none匿名不可讀寫)
   auth-access = write #授權用戶可寫
   password-db = ../../conf/passwd #使用哪個文件作為賬號文件
   authz-db = ../../conf/authz #使用哪個文件作為權限文件
   realm = /home/svn # 認證空間名,版本庫所在目錄

 

 

 

 11.復制 svnserve.conf 配置文件到剛創建的所有項目版本庫的conf目錄下

cp -f /home/svn/conf/svnserve.conf /home/svn/project1/conf/svnserve.conf
cp -f /home/svn/conf/svnserve.conf /home/svn/project2/conf/svnserve.conf

好啦,到這里僅剩最后一步就完成了時需說明一下 /home/svn/conf 下的svnserve.conf 文件,當SVN服務啟動時他並不會被版本庫載入,而真正被載入的配置是相對每個Project/conf里的svnserve.conf 文件,所以只是備份在當前目錄下為了以后添加項目時方便復制到新的Project/conf里,因此所有項目版本庫conf目錄下的svnserve.conf文件都是一樣的!當然啦每個Project/conf里的svnserve.conf 文件都復制好了后 /home/svn/conf 下的svnserve.conf 文件也可以被刪掉。

 

 12.啟動svn版本庫服務

svnserve -d -r /home/svn(停止SVN命令  killall svnserve)

 配置防火牆端口,開放3690端口(SVN默認端口)

firewall-cmd --zone=public --add-port=3690/tcp --permanent

 

記得重啟防火牆

firewall-cmd --reload

 

 

 CentOS 7 以下版本防火牆端口配置如下:

[root@localhost conf]# vi /etc/sysconfig/iptables 
添加以下內容: 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT 
保存后重啟防火牆 
[root@localhost conf]# service iptables restart 
或是關閉防火牆 :service iptables stop

13.windows 上測試搭建是否成功
輸入SVN地址:

 

 輸入用戶名和密碼:

 

 如果能夠checkout 則表示SVN服務器搭建並設置成功了,到此為止SVN服務器的搭建就已經完成了!

以下是遠程Linux系統中的一些操作命令和快捷鍵:
cd 打開目錄
cp 復制目錄或文件
ls 查看當前目錄文件
cat 查看文件內容
vi 編輯文件 (操作快捷鍵 按"i"插入模式,按"Esc"退出插入模式。":q!"取消編輯不保存編輯內容。":x"保存並退出vi編輯。)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM