CVSNT+WinCVS構建簡單的CVS應用
前言:在Windows平臺上,如何建立CVS服務器? 如何用WinCVS管理CVS服務器?如何創建用戶和分配權限?如何添加工程?如果你對以上幾個問題感興趣,請閱讀本文。
第一步: 安裝軟件
安裝的軟件有三個:分別是CVSNT2.0.51d、WinCVS2.0和python2.2.3,請注意版本,如果版本不對號入座,可能會出現問題。安裝順序是: pythonàwinCVSàCVSNT。
Python是一個單獨的軟件,到www.python.org下載,然后安裝。而WinCvs2_0_2-4的下載包里自帶CVSNT2.0.51d,安裝完WinCVS后,自動提示并開始安裝CVSNT,安裝完成后按照要求,重新啟動系統。
建議安裝目錄如下圖所示,放在同一個目錄方便管理: cvsnt是CVSNT的安裝目錄,python是Python的安裝目錄,winCVS是WinCVS的安裝目錄,而CVSServer目錄將作為CVSNT環境設置目錄,下面包括兩個目錄: CVSRoot和CVSTemp。

重啟后發現系統服務里出項兩項新的服務:
第二步:配置CVSNT服務
在開始菜單中找到“Service control panel”,發送到桌面快捷方式,與WINCVS的快捷方式,一起如下圖所示:

雙擊Service control panel,在“Reporsitories”標簽頁內,點擊add,在“location”位置選擇路徑“D:/CVS/CVSServer/CVSRoot”作為CVS的倉庫。在“Advanced”標簽頁內,為Temporary選擇“D:\CVS\CVSServer\CVSTemp”。點擊確定,關閉窗體。
如果想改變服務的端口,在“Advanced”標簽頁的下面設置兩個端口號,記住修改完之后需要在“ServiceStatus”標簽頁重啟兩項服務。
第三步:配置WinCVS來管理CVS服務
(事實上“WinCVS”和“CVSNT”不必要裝在同一臺機器上。)
建立“E:\CVSClient”目錄作為WinCVS在客戶端的管理目錄。該目錄下建立兩個目錄”admin”和”temp”。
菜單“admin”à”Preferences”打開配置窗體,在“CVS”標簽頁設置“HOME”:“E:\CVSClient\temp”。
在WinCVS頁面設置一些外置工具,比如默認的編輯器設為“Ultra Edit”,比較工具設為“Araxis Merge”,都為可選設置。
第四步:從WinCVS連接CVSNT
菜單“admin”à“Login”出現登陸對話框,選擇下面的CVSROOT,并從點擊后面的按鈕,彈出如下所示窗體,按照要求進行設置:

Protocol選擇pserver。Repository輸入CVSNT設置中下面對話框對應Name的內容:

選中Username點擊“Edit”輸入“Administrator”,同理password項輸入administrator的密碼,hostname輸入CVSNT所在的機器IP地址,如果CVSNT改過端口,還必須設置port,然后點擊“OK”關閉登陸設置,生成的字符串是:
“:pserver;username=administrator;password=1234;hostname=127.0.0.1:\CVS\CVSServer\CVSRoot”。最后點擊確定登錄CVSNT。
如果在系統的輸出打印:
***** CVS exited normally with code 0 *****
說明登陸成功,否則登陸失敗。
第五步:為CVS添加用戶
事實上是給操作系統添加用戶,凡是系統用戶都能登陸CVSNT。這里假設添加了兩個用戶“mingming”和“lili”。

拿兩個用戶在WinCVS上登陸CVS,如果一切順利的話兩個用戶是可以登錄的。
默認情況,任何用戶都具有對CVS服務器操作的任何權限,包括“創建(c)”,“讀(r)”和“寫(w)”。
第六步:為根目錄設置權限
用Administrator登錄WinCVS。菜單“view”à“Browse Location”à“change”,設置為“E:\CVSClient\admin”。這是WinCVS的左面板如下圖:

右鍵點擊“admin”目錄,選擇“check out module”,彈出對話框,如下圖所示:

Module Name那里設置CVSROOT。CVSROOT選項那里的設置方式與登錄時的設置方法一致。最后點擊確定,把服務器上的根目錄check out到客戶端。
給CVSRoot設置權限,其他用戶設置權限為“沒有任何權限(n)”,給administrator設置“任何權限(crw)”,這時需要記住幾條命令。選中“CVSRoot”目錄,在輸出窗口里執行命令,如下圖所示,輸入“cvs chacl default:r”,然后回車。

以上命令意思是: 設置默認的訪問權限是: 任何用戶對CVSROOT只有只讀權限。
同樣運行下列命令:
給administrator設置任何權限: cvs chacl administrator:rcw
把CVSROOT的所有者設為administrator: cvs chown administrator
查看CVSROOT的權限情況:cvs lsacl
結果如下圖所示:
Directory: .
Owner: administrator
default:r
administrator:rcw
最后右擊CVSROOT,commit整個目錄。
第七步:建立項目,為不同的用戶開不同的權限
菜單“view”à“browse location”à“change”,把工作目錄轉到“E:\CVSClient\temp”,建立兩個目錄,ProjectA和ProjectB,分別在兩個目錄下建立A.txt和B.txt。刷新左面的工作目錄“temp”,看到上述兩個目錄。
右擊任何一個目錄,選擇“import module”,把目錄上傳到CVS服務器。同理上傳另一個目錄。最后刪除“E:\CVSClient\temp”兩個目錄(一定要刪除)。接著把上述ProjectA和ProjectB目錄checkout到“E:\CVSClient\temp”。
設置mingming用戶對ProjectA目錄有“一切全限”,而lili對ProjectA沒有任何權限。其他用戶對ProjectA沒有任何權限。
Cvs chacl default:n
Cvs chacl mingming:crw
Cvs chacl lili:n
設置mingming用戶和lili用戶都具有“一切權限”,其他用戶具有只讀權限。
Cvs chacl default:r
Cvs chacl mingming:crw
Cvs chacl lili:crw
最后用cvs lsacl進行復查。
分別用mingming用戶和lili用戶登陸WinCVS,然后checkout ProjectA和ProjectB。
你會得到什么結果呢?
綜上:你需要記住下面3條命令
1. Cvs chacl …
2. Cvs chown …
3. Cvs lsacl
(注: 有的系統可能要設置CVSROOT環境變量,它的值是: D:\CVS\CVSServer\CVSRoot)
第八步:深入學習WinCVS
Guoly工作室出了一份《WinCVS從入門到精通》,請下載閱讀。網址是:http://www.guoly.com/wincvs-guide.html