歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> Linux業界

rhel4下安裝配置Subversion服務器

作者:蘇小勇 來源: http://www.bestunix.net

原文地址: http://www.bestunix.net/p/rhel_subversion.php


關於Subversion的種種優點就不用再說了,有興趣的話可以去 TARGET=_blank http://subversion.tigris.org/ 了解,或者google一下。



第一步,先檢查是否安裝了下面軟件包,rpm -q apr apr-devel subversion neon compat-libcom_err

沒有的話,推薦使用apt來下載安裝,只要 apt-get install subversion 一個命令就全搞定了,非常方便.apt的使用可以參考 TARGET=_blank http://www.bestunix.net/p/rhel4_apt.php


第二步,創建倉庫 svnadmin create /home/svnrepo

/root/svnrepo為所創建倉庫的路徑,理論上可以是任何目錄


第三步,修改配置文件/home/svnrepo/conf/svnserve.conf

代碼
#去掉#[general]前面的#號
[general]
#匿名訪問的權限,可以是read,write,none,默認為read
anon-access = none
#認證用戶的權限,可以是read,write,none,默認為write
auth-access = write
#密碼數據庫的路徑,去掉前面的#
password-db = passwd

注意:所有的行都必須頂格,否則報錯。
建議:為了防止不必要的錯誤,建議你直接用我上面的內容覆蓋掉文件原來的內容



第四步,修改配置文件passwd。

代碼[users]
sxy = sxy

注意
1. 一定要去掉[users]前面的#,否則svn只能以匿名用戶登錄,客戶端不會出現登錄窗口,除非你的anon不為none,否則將返回一個錯誤。
2. 這裡的密碼都是沒有加密的,我按照一些教程所說的用htpasswd生成的密碼無法使用。



第五步,啟動svn服務

對於單個代碼倉庫

啟動命令  svnserve -d -r /home/svnrepo --listen-host 192.168.1.200


其中-d表示在後台運行,-r指定服務器的根目錄,這樣訪問服務器時就可以直接用svn://服務器ip來訪問了。如果服務器有多ip的話--listen-host來指定監聽的ip地址.

我們可以在svn客戶端中通過svn://192.168.1.200來訪問svn服務器

對於多個代碼倉庫,我們在啟動時也可以用-r選項來指定服務器根目錄,但訪問時需要寫上每個倉庫相對於svn根目錄的相對路徑.

比如,我們有兩個代碼倉庫/home/repo1 和/home/repo2,我們用svnserve -d -r /home --listen-host 192.168.1.200來啟動,那麼在客戶端訪問時可以用svn://192.168.1.200/repo1和svn://192.168.1.200/repo2來分別訪問兩個項目

啟動完成以後,我們可以用ps aux|grep svnserv來查看是否存在svnserve進程.

第六步 開放服務器端口

svn默認端口是3690,你需要在防火牆上開放這個端口。

      /sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT

      /sbin/service iptables save

你也可以通過svnserve的--listen-port選項來指定一個已經開放的其他端口,不過這樣的話客戶端使用也必須家上端口,如svn://192.168.1.200:9999/.


第七步,使用svn客戶端導入項目

推薦使用客戶端 TARGET=_blank http://tortoisesvn.tigris.org/

eclipse插件 TARGET=_blank http://subclipse.tigris.org/



附:svnserve [選項]

有效選項:
 -d [--daemon]            : 後台模式
 --listen-port arg        : 監聽端口(後台模式)
 --listen-host arg        : 監聽主機名或IP地址(後台模式)
 --foreground             : 在前台運行(調試時有用)
 -h [--help]              : 顯示這個幫助
 --version                : 顯示版本信息
 -i [--inetd]             : inetd 模式
 -r [--root] arg          : 服務根目錄
 -R [--read-only]         : 不贊成;使用檔案庫配置文件
 -t [--tunnel]            : 隧道模式
 --tunnel-user arg        : 隧道用戶名(模式是當前用戶UID的名字)
 -T [--threads]           : 使用線程代替進程
 -X [--listen-once]       : 監聽一次(調試時有用)




Copyright © Linux教程網 All Rights Reserved