CVSNT-2.5.03與TortoiseCVS-1.8.25配置方法記錄
CVSNT-2.5.03
安裝CVSNT-2.5.03
下載CVSNT,從網(wǎng)站http://www.march-hare.com/cvspro/上下載軟件,
我下載的是cvsnt-2.5.03.2260.msi。
運(yùn)行安裝文件,

單擊“Next >”

選擇“I accept the terms in the License Agreement”核選項(xiàng)
單擊“Next >”

選擇安裝模式,這里我選擇的是“Complete”

單擊“Install”

單擊“Finish”

單擊“Yes”重起電腦(注意保存未保存的資料)
====================重起========================
建立數(shù)據(jù)倉(cāng)庫(kù)
打開(kāi)“開(kāi)始”->“所有程序”->“CVSNT”->“CVSNT Control Panel”

選擇“Repository configuration”頁(yè)面

單擊“Add”按鈕

單擊“Location”后面的“…”按鈕選擇建立倉(cāng)庫(kù)的位置

單擊“OK”按鈕,出現(xiàn)詢問(wèn)是否要初始化的對(duì)話框。
注意1:選擇的路徑對(duì)應(yīng)的文件夾下不能有名為“CVSROOT”的文件夾,否則不會(huì)彈出下面的對(duì)話框。
注意2:如果服務(wù)器與客戶端在同一電腦上,又在同一工作硬盤(pán)分區(qū)上的話,不要使硬盤(pán)分區(qū)上存在CVS目錄,該目錄被保留為客戶端的臨時(shí)目錄。

單擊“是(Y)”按鈕初始化。

單擊“確定”按鈕退出程序。
測(cè)試服務(wù)器是否安裝成功
開(kāi)始菜單->run->cmd,進(jìn)入命令行環(huán)境

輸入“CVS”,會(huì)出現(xiàn)相應(yīng)的幫助,如果沒(méi)出現(xiàn),說(shuō)明環(huán)境變量中的Path值沒(méi)有設(shè)置,你可以手動(dòng)設(shè)置到文件所在的目錄

輸入:“set cvsroot=:sspi:localhost:/cvsdata”
(最后一個(gè)冒號(hào)后面的“/cvsdata”是前面設(shè)置的Repository名字)

輸入“cvs version” ,顯示當(dāng)前CvsNt版本號(hào)

輸入“cvs login”,并輸入windows的登錄密碼

輸入“cvs ls”,顯示所有module,至少會(huì)有一個(gè)CVSROOT

添加用戶(實(shí)驗(yàn)失敗…)
1.使用cvs passwd命令可以添加用戶和修改密碼
2.可以修改 C:/cvsdata/cvsroot目錄下的passwd文件,如果沒(méi)有的話,可以自己建一個(gè)。添加 test:,這樣就添加了一個(gè)密碼為空的test用戶了。
3.添加用戶后可以使用:pserver:test@localhost:/cvs登錄了
***************************************************************************
TortoiseCVS-1.8.25
安裝
可以從http://www.tortoisecvs.org/下載軟件,
我下載的是TortoiseCVS-1.8.25.exe

單擊“Next >”

選擇安裝路徑,并單擊“Next >”

選擇完全安裝,并單擊“Next >”

單擊“Finish”按鈕重起電腦(注意保存未保存的資料)
=====================重起電腦==========================
在文件夾的空白處單擊右鍵,選擇“CVS”->“Make New Module…”


“CVSROOT”一欄不用填的,會(huì)自動(dòng)生成的。
“Protocol”一欄選擇“Password server (:pserver:)”
“Server”一欄輸入服務(wù)器的ip或域名,可以輸入我電腦的ip:222.205.41.25
“Port”一欄輸入服務(wù)器的端口:“2401”
“Repository folder”一欄輸入服務(wù)器的文件夾:“/cvs”
“User name”一欄輸入“jaceice”

單擊“OK”按鈕連接服務(wù)器,由于沒(méi)有輸入密碼,會(huì)出現(xiàn)一個(gè)錯(cuò)誤,并彈出對(duì)話框,輸入密碼,就能連接到服務(wù)器,然后對(duì)話框會(huì)消失。
對(duì)話框消失后,剛才的文件夾下的文件圖標(biāo)右下角會(huì)有圖標(biāo)。大部分的文件會(huì)有“?”的標(biāo)志,說(shuō)明這些文件的狀況不明,有些文件比如“xxx.obj”是中間文件,不必使用CVS管理,所以有“X”的標(biāo)志。

接下來(lái)的操作可以參考“User Guide (Simplified Chinese)”,不過(guò)每次提交修改的時(shí)候請(qǐng)先update,然后再commit。
先說(shuō)下CVSNT的用戶驗(yàn)證方式,CVSNT的用戶驗(yàn)證方式分兩種:Windows系統(tǒng)用戶與CVSNT用戶共存的混合驗(yàn)證方式,及CVSNT用戶 單一驗(yàn)證方式,默認(rèn)工作在混合驗(yàn)證方式下,當(dāng)然使用單一驗(yàn)證方式對(duì)用戶的管理肯定比較方便一點(diǎn),因此下面的配置就是圍繞該方式進(jìn)行的。各個(gè)資源庫(kù)所使用的驗(yàn)證方式及用戶配置由其目錄下CVSROOT里的配置文件決定,其中有幾個(gè)比較重要的文件。
1、config文件
控制CVSNT的驗(yàn)證工作方式的就是config文件,注意該文件最前面的兩行:
#Set this to `no" if pserver shouldn"t check system users/passwords
#SystemAuth=yes
第二行就是我們要修改的內(nèi)容,默認(rèn)狀態(tài)是被注釋掉的,SystemAuth有兩個(gè)值yes和no:
yes:pserver將使用Windows系統(tǒng)用戶和CVSNT用戶來(lái)共同驗(yàn)證(若CVSNT用戶未定義,則用Windows系統(tǒng)用戶來(lái)進(jìn)行驗(yàn)證),默認(rèn)為yes,CVSNT用戶在后面將要介紹的passwd文件中定義。
no:只使用CVSNT用戶來(lái)進(jìn)行驗(yàn)證。
該文件可以在客戶端進(jìn)行修改,因此我們可以將其checkout出來(lái)將第二行改為SystemAuth=no,并commit到CVSNT上就可以啟用單一驗(yàn)證方式了,注意啟用單一驗(yàn)證方式后原來(lái)的Windows系統(tǒng)用戶將變?yōu)闊o(wú)效,因此要注意執(zhí)行該步驟的時(shí)機(jī)。
2、 admin文件
該文件保存CVSNT管理員用戶列表,內(nèi)容很簡(jiǎn)單,形式如下:
User1
User2
User3
每 一行定義一個(gè)管理 員用戶,默認(rèn)時(shí)沒(méi)有該文件,但你可以在客戶端自己添加并add上去,再commit到CVSNT上,但是光有這個(gè)文件還是不會(huì)生效的,還要將其添加到 checklist文件中,使CVSNT能夠讀取該文件的內(nèi)容,在checklist中添加文件列表的格式為:
[空格]文件名 出錯(cuò)信息
其中文件名前的空格必須要有的,不然會(huì)出錯(cuò)。
我們可以先添加admin文件到CVSNT中,再修改checklist文件commit,就可以使admin文件生效了。
3、passwd文件
服 務(wù)器工作在CVSNT用戶單一驗(yàn)證方式下的時(shí)候,這個(gè)文件定義了CVSNT的用戶信息,這里面保存著用戶名,用戶密碼,以及別名信息。默認(rèn)狀態(tài)下沒(méi)有該文件,但是我們可以在CVSNT還工作在混合驗(yàn)證方式下時(shí),用系統(tǒng)管理員登錄,通過(guò)添加用戶命令來(lái)讓CVSNT自動(dòng)建立一個(gè)passwd文件。
添加用戶的命令的示例:
cvs passwd –r administrator –a cvsadmin
之后系統(tǒng)提示輸入密碼,輸入后服務(wù)器會(huì)新建一個(gè)passwd文件。
該文件的內(nèi)容很簡(jiǎn)單,形式如下:
cvsadmin:fqr1fS4gDghrt:administrator
kid:aTXRfS31Bm6JA
mystique:Yna4QcXz9dEqd
以第一行為例:cvsadmin為用戶名,fqr1fS4gDghrt為CVS使用UNIX標(biāo)準(zhǔn)加密函數(shù)對(duì)密碼進(jìn)行加密后的結(jié)果,administrator為該用戶的別名,當(dāng)使用混合驗(yàn)證方式時(shí)對(duì)應(yīng)Windows系統(tǒng)用戶名。
注意:這個(gè)文件是不能在客戶端進(jìn)行修改的,不能checkout出來(lái)。
4、group文件
該文件定義CVSNT中組信息,同組里的用戶擁有一樣的權(quán)限,對(duì)組權(quán)限的修改和對(duì)用戶權(quán)限的修改一樣。
group文件的內(nèi)容為
administrators:cvsadmin kid mystique
users:User1 User2 User3
可以看到該文件的內(nèi)容也很簡(jiǎn)單,組名:用戶名,多個(gè)用戶名之間用空格隔開(kāi)。
Group文件可以在客戶端修改,不用修改checkoutlist這個(gè)文件,系統(tǒng)會(huì)自動(dòng)使其生效。
作為組里面的特定成員可以賦給特定的權(quán)限。
了解了以上內(nèi)容,下面我說(shuō)一下我自己的配置步驟,我沒(méi)有使用WinCVS進(jìn)行操作,是直接使用命令行進(jìn)行修改的,覺(jué)得這樣思路比較清晰:
1、添加系統(tǒng)變量CVSROOT=E:/CVSNT/Repository,并把E:\CVSNT加入到系統(tǒng)Path路徑。
2、進(jìn)入命令提示符,因?yàn)榇藭r(shí)為混合驗(yàn)證模式,可以不用不用登陸直接進(jìn)行checkout。可以建立一個(gè)工作目錄,在該目錄下進(jìn)行操作,我這里為E:/CVSNT/Works。
檢出CVSROOT目錄:
cvs co CVSROOT
3、添加CVSNT系統(tǒng)管理員用戶,此時(shí)會(huì)提示設(shè)置用戶密碼:
cvs passwd –r administrator –a cvsadmin
4、修改CVSROOT訪問(wèn)權(quán)限:
cd CVSROOT
cvs chown cvsadmin //更改所有者為cvsadmin
cvs chacl default:n //默認(rèn)權(quán)限為n
cvs chacl cvsadmin:rwc //添加cvsadmin
5、修改config文件,按上面的方法修改后commit:
cvs ci
6、 此時(shí)單一驗(yàn)證方式已經(jīng)啟用了,也就是只能使用剛才添加的cvsadmin進(jìn)行登錄,此時(shí)可以把CVSNT控制面板上的Use local users for pserver authentication instead of domain users關(guān)掉。登錄前還要改一下系統(tǒng)變量CVSROOT,關(guān)閉命令提示符窗口,修改CVSROOT為:
:pserver:cvsadmin@192.168.0.1:4021/CVSNT/Repository
這里的192.168.0.1是服務(wù)器的IP地址,/CVSNT/Repository就是前面設(shè)置Repository時(shí)設(shè)置的Name,可以改為你機(jī)器上的配置。修改系統(tǒng)變量之后以下的步驟在任何與服務(wù)器相連的機(jī)器上進(jìn)行,當(dāng)然該機(jī)器上應(yīng)該有CVSNT的可執(zhí)行文件。
7、如果為了避免出現(xiàn)錯(cuò)誤,先重啟一下CVSNT服務(wù)器,再啟動(dòng)命令提示符來(lái)到E:/CVSNT/Works,因?yàn)橐呀?jīng)啟用單一驗(yàn)證方式,先要進(jìn)行登錄。
cvs login
輸入密碼,此時(shí)就是以cvsadmin登錄了。
8、添加admin文件,首先將CVSROOT檢出,在CVSROOT下新建admin文件,內(nèi)容為
cvsadmin
執(zhí)行命令:
cvs add admin
cvs ci
9、修改checklist文件,在該文件末尾添加一行:
[空格]admin error message
注意:admin前的空格不能少。
執(zhí)行命令:
cvs ci
經(jīng)過(guò)以上步驟,可以說(shuō)用戶配置已經(jīng)基本完成了,CVSNT可以很好的工作在單一驗(yàn)證方式下。進(jìn)一步的管理可使用以下命令:
添加用戶: cvs passwd -a username,使用時(shí)不必理會(huì)需要添加別名的提示。
修改用戶權(quán)限:cvs chacl username:r|w|c|n,(r:Read w:write c:control n:none)
要添加組管理,只需同添加admin步驟一樣,按照格式要求新建group文件即可。
如果還有不清楚的可以看看自帶的文檔,說(shuō)得還是比較詳細(xì)的。
ok,差不多就是這些,有錯(cuò)還請(qǐng)各位幫忙指出,還在學(xué)習(xí)ING