在Fedora 10下面配置SVN服務(wù)器 |
發(fā)布時間: 2012/5/23 20:04:01 |
subversion(簡稱svn)是近年來崛起的版本管理工具,是cvs的接班人。目前,絕大多數(shù)開源軟件都使用svn作為代碼版本管理軟件。 svn億恩科技服務(wù)器有2種運行方式:獨立億恩科技服務(wù)器和借助apache。2種方式各有利弊。 svn存儲版本數(shù)據(jù)也有2種方式:BDB和FSFS。因為BDB方式在億恩科技服務(wù)器中斷時,有可能鎖住數(shù)據(jù)(我在搞ldap時就深受其害,沒法根治),所以還是FSFS方式更安全一點。 1.安裝subversion: yum install subversion.i386 (注;在mandriva下面需要安裝urpmi subversion subversion-server subversion-tool) 2、創(chuàng)建subversion版本庫,并修改權(quán)限 # mkdir -p #SVNPATH/repos # svnadmin create #SVNPATH/repos/project1 3、啟動subversion服務(wù),并設(shè)置版本庫位置 # svnserve --daemon --root=#SVNPATH/repos --listen-port=3690 注:不推薦使用root用戶啟動服務(wù),默認端口號為3690 4.# yum list mod_dav_svn 注:可以發(fā)現(xiàn)與mod_dav_svn相關(guān)的包mod_dav_svn.i386,安裝mod_dav_svn.i386 # yum install mod_dav_svn.i386 注:安裝完成后可以發(fā)現(xiàn)在/etc/httpd/conf.d文件夾下,自動產(chǎn)生了subversion.conf文件,而且自動添加了如下兩行: LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so 將......之間的內(nèi)容改為如下內(nèi)容: DAV svn SVNPath #SVNPATH/repos/project1 5、重新啟動Apache服務(wù) # apachectl restart 6、修改SELINUX權(quán)限 # chcon -R -h -u system_u -t httpd_sys_content_t #SVNPATH/repos 7.可以用#lsof-i:3690查看是否開啟 8.修改配置文件/home/svnroot/repository/conf/svnserve.conf [general] #匿名訪問的權(quán)限,可以是read,write,none,默認為read anon-access = none #認證用戶的權(quán)限,可以是read,write,none,默認為write auth-access = write #密碼數(shù)據(jù)庫的路徑,去掉前面的# password-db = passwd #用戶操作權(quán)限# authz-db = authz 修改配置文件passwd [users] user = passwod user1 = password1 修改配置文件authz [test1:/] user = rw [test1:/doc] user1 = rw 9.對于單個代碼倉庫 啟動命令 svnserve -d -r /home/svnroot/repository/test1 --listen-host 192.168.1.18 其中-d表示在后臺運行,-r指定億恩科技服務(wù)器的根目錄,這樣訪問億恩科技服務(wù)器時就可以直接用svn://億恩科技服務(wù)器ip來訪問了。如果億恩科技服務(wù)器有多ip的話--listen-host來指定監(jiān)聽的ip地址。 我們可以在svn客戶端中通過svn://192.168.1.18來訪問svn億恩科技服務(wù)器。 對于多個代碼倉庫,我們在啟動時也可以用-r選項來指定億恩科技服務(wù)器根目錄,但訪問時需要寫上每個倉庫相對于svn根目錄的相對路徑。 比如,我們有兩個代碼倉庫/home/svnroot/repository/test1 和/home/svnroot/repository/test2,我們用svnserve -d -r /home/svnroot/repository --listen-host 192.168.1.18來啟動,那么在客戶端訪問時可以用svn://192.168.1.18/test1和svn://192.168.1.200 /test2來分別訪問兩個項目 啟動完成以后,我們可以用ps aux|grep svnserv來查看是否存在svnserve進程。 10.開放億恩科技服務(wù)器端口 SVN默認端口是3690,你需要在防火墻上開放這個端口。 /sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT /sbin/service iptables save 你也可以通過svnserve的--listen-port選項來指定一個已經(jīng)開放的其他端口,不過這樣的話客戶端使用也必須加上端口,如svn://192.168.1.18:9999/。 11.yum 有一個有趣的用法: yum whatprovides mod_dav_svn.so 12.在mandriva下要安裝mod_dav.so,可以用urpmi apache-mod_dav_svn 本文出自:億恩科技【prubsntakaful.com】 服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |