三、CVSNT服務(wù)器端配置實(shí)現(xiàn)子目錄權(quán)限分配:
1. 實(shí)現(xiàn)方式:直接修改fileattr.xml文件實(shí)現(xiàn)
2. 達(dá)到的效果:
一個(gè)項(xiàng)目的CVS標(biāo)準(zhǔn)庫(kù)結(jié)構(gòu)包括兩部分:開(kāi)發(fā)庫(kù)和受控庫(kù)。每個(gè)人員在項(xiàng)目中擔(dān)當(dāng)?shù)慕巧煌,從而在不同的子目錄中?yīng)當(dāng)擁有不同的權(quán)限。現(xiàn)假定一個(gè)項(xiàng)目,項(xiàng)目名為PJ-XXXXX,項(xiàng)目經(jīng)理為楊捷,配置管理員為王怡嵐,開(kāi)發(fā)人員為胡曉玲和姜潔,確定項(xiàng)目經(jīng)理?yè)碛虚_(kāi)發(fā)庫(kù)與受控庫(kù)中所有權(quán)限(即相當(dāng)于管理員權(quán)限);配置管理員擁有受控庫(kù)中所有權(quán)限以及開(kāi)發(fā)庫(kù)中項(xiàng)目管理子目錄的所有權(quán)限,開(kāi)發(fā)庫(kù)中其它子目錄擁有只讀權(quán)限;開(kāi)發(fā)人員擁有開(kāi)發(fā)庫(kù)中所有權(quán)限,受控庫(kù)只有只讀權(quán)限。所以,可以確定完成的效果:
1) admin與yangjie能設(shè)置CVSNT服務(wù)器的配置,并且能對(duì)所有的Repository擁有全部權(quán)限,密碼與用戶名一致;
2) 普通用戶有3個(gè):wangyilan,huxiaoling,jiangjie,密碼與用戶名一致;
3) 受控庫(kù):yangjie,wangyilan可以對(duì)受控庫(kù)進(jìn)行checkout,commit,add (read,write,create),huxiaoli,jiangjie只能進(jìn)行checkout (read);
4) 開(kāi)發(fā)庫(kù)中的項(xiàng)目管理子目錄:yangjie,wangyilan,huxiaoling,jiangjie均擁有該目錄的所有權(quán)限,可以進(jìn)行checkout,commit,add (read,write,create);
5) 開(kāi)發(fā)庫(kù)中其他子目錄:yangjie,huxiaoling,jiangjie可以進(jìn)行checkout,commit,add (read,write,create),wangyilan只能進(jìn)行checkout (read)
/*
說(shuō)明:
權(quán)限參數(shù)有read,write,add,tag,control.這里只舉例說(shuō)明常要的read,write,add(參見(jiàn)幫助文檔);control沒(méi)有應(yīng)用成功。
*/
3. 開(kāi)始配置:
1) 使用CVSNT在服務(wù)器端創(chuàng)建一個(gè)名為PJ-XXXXX的項(xiàng)目庫(kù);
2) 在服務(wù)器端對(duì)CVSROOT進(jìn)行設(shè)置,創(chuàng)建admin文件(無(wú)擴(kuò)展名),添加管理員用戶:admin,yangjie;
3) 定義group組:
在cvsroot建立文件名為group的文件(注意,無(wú)擴(kuò)展名),內(nèi)容為:
#groupall:hava all permissions
Groupall: admin yangjie
#controlall:have all permissions of control repository
controlall: admin yangjie wangyilan
#controlreadonly: read only of control repository
controlreadonly: huxiaoling jiangjie
#developall:have all permissions of develop repository except DPM subdirectory
developall: admin yangjie huxiaoling jiangjie
#developreadonly: read only of develop repository except DPM subdirectory
developreadonly: wangyilan
#DPMall: have all permissions of DPM subdirectory in develop repository
DPMall: admin yangjie huxiaoling jiangjie wangyilan
/*
說(shuō)明:
groupall有完全權(quán)限;
controlall對(duì)受控庫(kù)有完全權(quán)限;
controlreadonly受控庫(kù)只讀;
developall對(duì)開(kāi)發(fā)庫(kù)中除項(xiàng)目管理子目錄外有完全權(quán)限;
developreadonly對(duì)開(kāi)發(fā)庫(kù)中除項(xiàng)目管理子目錄外有只讀權(quán)限;
DPMall對(duì)開(kāi)發(fā)庫(kù)項(xiàng)目管理子目錄有完全權(quán)限。
該文件不用注冊(cè)到checkoutlist。
*/