搭建CVSNT環(huán)境手記
前言
CVS(并發(fā)版本控制系統(tǒng))是C/S結(jié)構(gòu)的,有了client當(dāng)然也有server,一般server都是建立在UNIX或LINUX上的,但開發(fā)的時(shí)候機(jī)器環(huán)境一般都是Windows,所以就有了在Windows環(huán)境搭建CVS server的需求,我們用CVSNT來完成這項(xiàng)工作。
1安裝前準(zhǔn)備
操作系統(tǒng):Windows XP Professional
CVSNT安裝文件:cvsnt-2.5.01.1976.msi
客戶端軟件WinCvs:WinCvs_setup_13b13.exe
Python :Python-2.2.1.exe
聽說CVS版本兼容性不是很好,所以我建議盡量用以上的版本,我就是在以上的版本上是搭建好環(huán)境的,為簡便起見,我把CVSNT和client裝在一臺機(jī)器上。實(shí)際的情況可能是CVSNT裝在服務(wù)器上,而Python和WinCvs裝在多個(gè)客戶機(jī)上。
2安裝CVSNT及WinCvs
安裝順序沒有規(guī)定,我是先裝了Python,再裝WinCvs,再裝CVSNT。
雙擊安裝文件后跟著感覺一路next就行了,注意一下安裝路徑就行,別裝完后不知道裝在哪個(gè)路徑下。裝完CVSNT后會提示重啟機(jī)器,立即重啟或等會再重啟都行。
3配置CVSNT
裝完CVSNT后點(diǎn)開始菜單->所有程序->CVSNT->CVSNT Control Panel,打開如下的配置界面:
在這個(gè)界面上可以看到服務(wù)是否已經(jīng)啟動及CVSNT的版本信息。點(diǎn)Repositories標(biāo)簽,打開如下的界面:
這里將列出所有的repository,第一次安裝的話列表應(yīng)該是空的,點(diǎn)Add按鈕,將打開如下的對話框
在這個(gè)對話框輸入如下信息(輸入這些信息前,我在E:\下新建了一個(gè)空的cvsroot目錄,這個(gè)目錄就是Repositories在服務(wù)器上的存放地址):
點(diǎn)OK按鈕,將彈出如下確認(rèn)對話框:
這是提示你是否初始化repository,點(diǎn)是,將看到如下界面:
這說明一個(gè)repository就建立好了。再點(diǎn)Server Settings標(biāo)簽,設(shè)置如下:
Run as欄用administrator用戶,Temporaty我指定的是E:\cvstemp,這個(gè)我也不知道是干嘛的,有興趣可以上網(wǎng)搜搜。然后再點(diǎn)Compatibility表簽,打開如下界面:
注意要勾選Respond as cvs 1.11.2 to version…,要不然就會出問題,這個(gè)好像是為了保證兼容性。
到現(xiàn)在,CVSNT的配置就基本完畢了。以后的操作都是在客戶機(jī)上進(jìn)行。如果只是在服務(wù)器上配CVSNT,那做到這一步就可以換機(jī)器了。
4簡單的權(quán)限分配
4.1準(zhǔn)備工作
安裝完WinCvs后,在客戶機(jī)上的桌面上應(yīng)該有WinCvs這個(gè)圖標(biāo)(一個(gè)黃色的小魚),雙擊,將打開WinCvs的界面(為避免CVS的版本問題,一定要在做以下操作前拷貝C:\Program Files\CVSNT(CVSNT的安裝目錄)目錄下的所有文件,然后用這些文件覆蓋C:\Program Files\GNU\WinCvs 1.3\CVSNT(WinCvs的安裝目錄)目錄下的所有文件),如下圖:
為方便講解,我在F:\下建立了一個(gè)目錄clientadmin/project,其目錄結(jié)構(gòu)如下
project
|--pkg1
|--test2.txt
|--pkg2
|--test3.txt
|--pkg3
|--test4.txt
現(xiàn)在要實(shí)現(xiàn)的權(quán)限分配是:
建立3個(gè)用戶:test1、test2、test3,密碼與用戶名一致。
建立一個(gè)組:test,test1、test2、test3均在此組中。
test1能且僅能編輯修改pkg1,test2能且僅能編輯修改pkg2,test3能且僅能編輯修改pkg3。
如上圖,點(diǎn)菜單欄的Admin->Preferences…,打開如下對話框:
設(shè)置如圖上所示,然后點(diǎn)確定。然后再點(diǎn)菜單欄的Admin->Login…,打開一個(gè)對話框,點(diǎn)確定,然后會提示輸入密碼,輸入操作系統(tǒng)的administrator的密碼后點(diǎn)確定,將登錄成功。然后右鍵點(diǎn)project,在彈出的右鍵菜單中點(diǎn)Import module…,將彈出Import filter對話框,點(diǎn)Continue按鈕,將打開Import settings對話框,如下圖所示:
輸入projet,然后點(diǎn)Import options標(biāo)簽,在多選框列表中選中Create CVS directories while importing,然后點(diǎn)確定。這個(gè)操作將在CVS服務(wù)器的根目錄下增加一個(gè)目錄E:\cvsroot\project,這就是一個(gè)module了,如下圖所示:
4.2創(chuàng)建用戶
接下來開始建立用戶,點(diǎn)菜單欄的Admin->Command Line…或者按快捷鍵Ctrl+L,將打開如下的命令輸入框:
輸入如圖中所示的命令,然后點(diǎn)確定或按回車鍵,然后輸入兩次密碼(均為test1),就加好一個(gè)用戶了。其它兩個(gè)用戶如法炮制。加用戶的命令的詳細(xì)幫助可以參考C:\Program Files\CVSNT\cvs.chm,這個(gè)就是CVSNT Manual,以后的其它命令的詳細(xì)幫助都可以在這個(gè)文件中找到。
4.3創(chuàng)建組
接下來創(chuàng)建組,創(chuàng)建組的操作比較簡單,就是編輯服務(wù)器上的文件的內(nèi)容,文件所在目錄為E:\cvsroot\CVSROOT,默認(rèn)group文件并不存在,需新建。這個(gè)文件中的內(nèi)容就是簡簡單單一行,如下:
test:test1 test2 test3
這個(gè)表示有一個(gè)test組,test1、test2、test3均是改組的成員。
4.4分配權(quán)限
分配權(quán)限的命令為cvs chacl …。
在WinCvs中選中project,如下圖:
然后按快捷鍵Ctrl+L,打開命令輸入框,按順序輸入以下命令:
cvs chacl –a none –u test pkg1 pkg2 pkg3
按回車鍵,如下圖所示:
將出現(xiàn)上圖左下角所示的命令執(zhí)行成功信息。上面的命令達(dá)到的效果是test用戶對pkg1、pkg2、pkg3均無權(quán)限,test用戶其實(shí)就是我們前面建立的組(group),它包括了test1、test2、test3三個(gè)用戶。
接下來按順序執(zhí)行如下三個(gè)命令:
cvs chacl –a read,write,create –u test1 pkg1
cvs chacl –a read,write,create –u test2 pkg2
cvs chacl –a read,write,create –u test3 pkg3
這三個(gè)命令成功執(zhí)行完畢就達(dá)到我們的目的。
4.5測試效果
在F:\新建三個(gè)目錄client1,client2,client3,然后點(diǎn)如下圖所示的change location按鈕,修改目錄,選擇test1的工作目錄client1,做完這一步后,不要著急,先關(guān)掉WinCvs:
再打開WinCvs,修改Preferences,如下圖:
然后登錄,登錄成功后,在client1上點(diǎn)右鍵->Checkout module…,打開如下界面:
點(diǎn)確定,就可以看到權(quán)限控制后的效果了,因?yàn)閜roject下pkg2和pkg3沒有checkout下來。依樣畫葫蘆,換用test2,test3看看。
這個(gè)時(shí)候在EOS Studio中也可以測試測試,看看效果如何了。