CentOS 6.3 64位安裝svn服務(wù)器方法
發(fā)布時(shí)間:2012-8-13本文詳細(xì)的介紹了在CentOS 6.3 64位安裝svn服務(wù)器方法
工具/原料
環(huán)境linode vps centos6 64bit
svn是版本管理控制工具 安裝簡(jiǎn)單方便;
svn獨(dú)立服務(wù)器安裝方式
svn獨(dú)立服務(wù)器的搭建
環(huán)境準(zhǔn)備
yum groupinstall "X Software Development" "Development Libraries" "Development Tools"
下載所需的源碼包
subversion-deps-1.6.17.tar.gz svn 的支持庫(kù)之類的文件
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
subversion-1.6.17.tar.gz svn 的主程序
wget http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz
源碼編譯安裝
這兩個(gè)要解壓在同一個(gè)目錄下
tar zxvf subversion-deps-1.6.17.tar.gz
tar xvf subversion-1.6.17.tar.gz
cd subversion-1.6.17
./configure --prefix=/opt/svn
make && make install
修改環(huán)境變量
vi /etc/profile , 在/etc/profile 最后加入:
PATH=$PATH:/opt/svn/bin
export PATH
檢測(cè)是否安裝成功
svnserve --version
顯示如下信息則表示安裝成功。
svnserve, version 1.6.17 (r1128011)
compiled Mar 23 2012, 16:57:41
配置svn
系統(tǒng)采用為每個(gè)項(xiàng)目單獨(dú)建一版本庫(kù)的策略。配置文件,密碼文件,訪問控制文件等都放在
版本庫(kù)的conf 目錄下。所以每次開始一個(gè)新項(xiàng)目都必須新建一個(gè)版本庫(kù),并重新配置各配
置文件。還有很重要的一條,要求各組員重新配置客戶端,包括服務(wù)器版本庫(kù)路徑,本地路
徑等信息。
創(chuàng)建svn庫(kù)testsvn
mkdir /var/svn
cd /var/svn
svnadmin create testsv
cd testsv
[root@nagios testsv]# ls
conf db format hooks locks README.txt
[root@nagios testsv]# cd conf/
[root@nagios conf]# ls
authz passwd svnserve.conf
配置版本庫(kù)信息
[root@nagios conf]# vi svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authzauthz-db = authz
realm = testsv(庫(kù)的名字)
[sasl]
# use-sasl = true
# min-encryption = 0
# max-encryption = 256
定義版本庫(kù)訪問權(quán)限
[root@nagios conf]# vi authz
[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe
Average
[groups]
# harryharry_and_sally = harry,sally
# harryharry_sally_and_joe = harry,sally,&joe
# [/foo/bar]
# harry = rw
# &joe = r
# * =
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
#添加下面兩句
[/]
testuser = rw
[testsv]
testuser = rw
定義用戶密碼
[root@nagios conf]# cat passwd
[users]
# harry = harryssecret
# sally = sallyssecret
testuser = testsv123456
啟動(dòng)svn服務(wù)
建立啟動(dòng)svn 的用戶
useradd svn
passwd svn
根據(jù)提示為用戶svn 設(shè)置密碼
允許用戶svn 訪問版本庫(kù)
chown -R svn:svn /var/svn
啟動(dòng)svn
(1)用設(shè)定帳戶啟動(dòng)
su svn -c "svnserve -d --listen-port 9999 -r /var/svn"
其中:
su svn 表示以用戶svn 的身份啟動(dòng)svn
-d 表示以daemon 方式(后臺(tái)運(yùn)行)運(yùn)行
–listen-port 9999表示使用9999 端口,可以換成你需要的端口。但注意,使用1024以下的端
口需要root 權(quán)限
-r /var/svn 指定根目錄是/var/svn
(2)對(duì)于單個(gè)代碼倉(cāng)庫(kù):
啟動(dòng)命令:
svnserve -d -r 文件夾路徑--listen-host 192.168.100.131
其中-d 表示在后臺(tái)運(yùn)行, -r 指定服務(wù)器的根目錄,這樣訪問服務(wù)器時(shí)就可以直接用svn://
服務(wù)器ip 來訪問了。
如果服務(wù)器有多ip 的話–listen-host 來指定監(jiān)聽的ip 地址.
我們可以在svn 客戶端中通過svn://192.168.100.131 來訪問svn 服務(wù)器
(3)對(duì)于多個(gè)代碼倉(cāng)庫(kù):
我們?cè)趩?dòng)時(shí)也可以用-r 選項(xiàng)來指定服務(wù)器根目錄, 但訪問時(shí)需要寫上每個(gè)倉(cāng)庫(kù)相對(duì)于svn
根目錄的相對(duì)路徑.
比如, 我們有兩個(gè)代碼倉(cāng)庫(kù)/var/svn/testsv
svnserve -d -r /var/svn --listen-host 192.168.1.100
來啟動(dòng),
那么在客戶端訪問時(shí)可以用svn://192.168.100.100/testsv 來分別訪問兩個(gè)項(xiàng)目啟動(dòng)完成以
后
我啟動(dòng)的方法:
[root@austit fabian]# svnserve -d -r /var/svn --listen-host 192.168.100.131
注意:
svn 默認(rèn)端口是3690 ,你需要在防火墻上開放這個(gè)端口。也可以通過svnserve 的–listen-port
選項(xiàng)來指定一個(gè)已經(jīng)開放的其他端口, 不過這樣的話客戶端使用也必須家上端口, 如
svn://192.168.100.200:8888/
檢查是否啟動(dòng)成功
(查看是否存在svnserve 進(jìn)程)
ps -ef|grep svnserve
如果顯示如下,即為啟動(dòng)成功:
svn 6941 1 0 15:07 ? 00:00:00 svnserve -d –listen-port 9999 -r /var/svn
我是用root 帳戶啟動(dòng)的:
[root@austit fabian]# svnserve -d -r /var/svn --listen-host 192.168.100.131
[root@austit fabian]# ps -ef|grep svnserve
root 4513 1 0 21:07 ? 00:00:00 svnserve -d -r /var/svn --listen-host 192.168.100.131
root 4515 4409 0 21:07 pts/1 00:00:00 grep svnserve
svn使用
然后用戶下載客戶端訪問即可,推薦使用TortoiseSVN。
注意事項(xiàng)
盡量不要使用centos自帶的svn版本服務(wù)器
安裝過程不要斷掉ssh鏈接,否則容易出現(xiàn)未知錯(cuò)誤。可以使用screen來避免ssh斷線的問題。
【返回】