ViewCVS是一個(gè)使用Python書(shū)寫(xiě)的查看CVS代碼庫(kù)中的 所有數(shù)據(jù) 的軟件。它已經(jīng)被很多的配置管理系統(tǒng)所使用, 也是現(xiàn)在開(kāi)放源代碼產(chǎn)品中與cvsweb一樣可以選擇的CVS輔助工具。
	  
	  安裝前的準(zhǔn)備
	  在你的系統(tǒng)中應(yīng)該已經(jīng)有以下軟件已經(jīng)安裝:
	  
	  python 1.5以上的版本,這個(gè)沒(méi)有安裝也可以,因?yàn)閜orts在編譯時(shí)是會(huì)確定它是否安裝,如果沒(méi)有安裝會(huì)自動(dòng)編譯并安裝的。
	  cvs,在FreeBSD中已經(jīng)內(nèi)置了cvs,所以不必?fù)?dān)心。
	  mysql 3.22以上的版本,如果你需要viewcvs將數(shù)據(jù)存入mysql,哪么你應(yīng)該提前安裝該軟件。注意,這個(gè)軟件不是viewcvs運(yùn)行所必須的。
	  
	  在FreeBSD下安裝ViewCVS
	  在FreeBSD下安裝ViewCVS非常簡(jiǎn)單,通過(guò)ports來(lái)安裝可以了:
	  
	  root@~$cd /usr/ports/devel/viewcvs/
	  root@/usr/ports/devel/viewcvs$make install;make clean
	  這樣ViewCVS安裝到了/usr/local中的viewcvs-version目錄中(當(dāng)前版本為0.9.2)。
	  
	  配置基本的ViewCVS
	  將viewcvs中的viewcvs.conf.dist復(fù)制一個(gè)復(fù)本名為viewcvs.conf。這個(gè)文件是viewcvs所使用的主要的配置文件。在這個(gè)文件中少要設(shè)置以下參數(shù):
	  
	  cvs_roots
	  default_root
	  rcs_path
	  mime_types_file
	  cvs_roots設(shè)置
	  在viewcvs.conf中的cvs_roots的原始設(shè)置為:
	  
	  cvs_roots =
	  Development : /home/cvsroot
	  我們需要將所有讓viewcvs要顯示的cvsroot一一加入列表中,格式為[CVSROOT名稱 ] :[CVSROOT路徑 ] ,以下為我的一個(gè)設(shè)置例子:
	  
	  cvs_roots =
	  maven : /home/cvsd/cvs/maven,
	  hdsite : /home/cvsd/cvs/hdsite,
	  bsdhowto : /home/cvsd/cvs/bsdhowto
	  這里我設(shè)置了三個(gè)CVSRoot讓viewcvs能看到,它們的名字為maven、hdsite、bsdhowto。需要注意的是每個(gè)CVSRoot之間的設(shè)置使用逗號(hào)分開(kāi)
	  
	  default_root
	  default_root是用來(lái)設(shè)置在ViewCVS首頁(yè)缺省顯示的cvsroot項(xiàng)目。
	  
	  rcs_path
	  在viewcvs.conf中的rcs_path的原始設(shè)置是沒(méi)有的:
	  
	  #rcs_path = /usr/bin/
	  我們可以看到它已經(jīng)被注釋了,如果你的rcs命令不在/usr/bin目錄下,哪么將注釋去除,改為rcs所在路徑。在FreeBSD下默認(rèn)rcs在/usr/bin下,所以這個(gè)設(shè)置可以不動(dòng)。
	  
	  mime_types_file
	  在viewcvs.conf中的mime_types_file設(shè)置也是沒(méi)有的:
	  
	  #mime_types_file = /usr/local/apache/conf/mime.types
	  我們可以將它指向apache的mime設(shè)置,也可以自己來(lái)書(shū)寫(xiě)一個(gè)新的設(shè)置,我感覺(jué)它不是為web服務(wù)器所使用,應(yīng)該是在獨(dú)立運(yùn)行時(shí)使用的配置項(xiàng)。
	  
	  ViewCVS的其它配置
	  除基本設(shè)置外,還有一些其它的設(shè)置也很有用,在這里我們將一些有用的設(shè)置一一說(shuō)明。
	  
	  [general]中的其它設(shè)置
	  address用來(lái)設(shè)置在頁(yè)面中顯示管理聯(lián)系人的郵件
	  
	  address = HD
	  
	  [vhosts]虛擬主機(jī)支持
	  如果你會(huì)有多個(gè)虛似主機(jī)來(lái)使用同一個(gè)cgi,會(huì)發(fā)現(xiàn)每個(gè)主機(jī)可能需要不同的viewcvs.conf的設(shè)置,哪么在viewcvs.conf中提供了vhost的設(shè)置可能。這是viewcvs.conf的原始說(shuō)明:
	  
	  # vhost1 = glob1, glob2
	  # vhost2 = glob3, glob4
	  
	  # [vhost1-section]
	  # option = value
	  # [vhost1-othersection]
	  # option = value
	  # [vhost2-section]
	  # option = value
	  大致一看基本上可以看明白了,使用一個(gè)名字給一個(gè)虛似主機(jī),并說(shuō)明這個(gè)虛似主機(jī)對(duì)應(yīng)的url。每一個(gè)虛似主機(jī)都可以設(shè)置所有的節(jié)屬性,節(jié)的名稱加上虛似主機(jī)的名稱可以了。這是我設(shè)置的一個(gè)實(shí)例:
	  
	  mavencn = maven.huangdong.com
	  bsd = bsd.huangdong.com
	  
	  [mavencn-general]
	  default_root = maven
	  [bsd-general]
	  default_root = bsdhowto
	  我設(shè)置了兩個(gè)虛似主機(jī):mavencn和bsd,分別對(duì)應(yīng)maven.huangdong.com和bsd.huangdong.com兩個(gè)URL。在下面分別為兩個(gè)虛似主機(jī)設(shè)置了general節(jié)中的default_root屬性。
	  
	  安裝的注意事項(xiàng)
	  首先一定要注意CVS中文件和目錄的權(quán)限設(shè)置,一定需要給web server運(yùn)行的帳號(hào)以讀的權(quán)限。在我使用FreeBSD中ports里的cvsd服務(wù)時(shí),我將它的umask設(shè)置為022。
	  
	  注:任何轉(zhuǎn)載或摘抄請(qǐng)注明文章出處(中文FreeBSD用戶組 http://www.cnfug.org)