前文提到過(guò),CVSNT ROOT 默認(rèn)是只有管理員擁有其所有權(quán)限,它是靠 fileattr.xml 文件這一句
<all deny="1" />
來(lái)實(shí)現(xiàn)的,具體的詳細(xì)解釋見(jiàn)下文。
*/
12 *** 至此,對(duì) CVSRT Server 的 CVSROOT 的修改已經(jīng)完成,為了安全起見(jiàn),刪除臨時(shí) checkout 出來(lái)的 CVSROOT
d:/00/rd cvsroot /s
dos 命令,刪除根目錄下面的所有文件及文件夾。
/*
dos 命令
1. help # 列出所有命令
2. help xxx #列出 xxx 的幫助
*/
13 *** 以 test1 用戶身份 import 一個(gè) testa 工程,做如下權(quán)限限制:
只有 cvsadmin,test1,test2 能看見(jiàn) testa,;
test1 只能對(duì) teata 進(jìn)行 checkout(read);
cvsadmin,test2 能對(duì) testa 進(jìn)行 checkout,commit,add (read,write,create).
關(guān)閉窗口,建立臨時(shí)目錄 d:/00/test/,在 test 中放入幾個(gè)文件,準(zhǔn)備 import 到 CVSNT Server 上面去。
重新以 test1 用戶登陸:
d:/00/test/set cvsroot=:pserver:test1:test1@129.9.200.253/CVSNTROOT
把 d:/00/test/目錄中的所有文件 import 進(jìn)入 CVSNT Server,并且命名為 testa:
d:/00/test/cvs import -m "Imported sources test1 " testa start
-m 為導(dǎo)入時(shí)的日志信息
cvs --help import 可以查看 import 參數(shù)
設(shè)置權(quán)限:
必須導(dǎo)出來(lái)才可以定制權(quán)限;
只有 CVSNT Server 的管理員才可以設(shè)置權(quán)限,項(xiàng)目的建立者(owner)也不能更改權(quán)限(是這樣嗎,麻煩!);
新建立的項(xiàng)目:默認(rèn)是所有人擁有所有權(quán)限;
cvs lsacl :查看當(dāng)前 Repository 權(quán)限。
/*
關(guān)于權(quán)限的說(shuō)明:
CVSNT 2.5 對(duì) Repository 的訪問(wèn)控制設(shè)置,是使用命令 chacl,chown 來(lái)進(jìn)行的;
當(dāng)新建立一個(gè) Repository 之后,會(huì)在其中建立一個(gè) cvs 文件夾,里面有一個(gè) fileattr.xml 文件,該文件定義了其所在 Repository 的訪問(wèn)控制權(quán)限,實(shí)際上 chacl,chown 命令是對(duì)該文件的操作;
chacl,chown 命令,只有管理員能夠執(zhí)行,是 Repository 的創(chuàng)建者(owner)也不能執(zhí)行!(管理員累死了!怎么會(huì)有這種管理方法!)
執(zhí)行 chacl 命令,必須先把 Repository 導(dǎo)出來(lái),以下執(zhí)行命令,都是導(dǎo)出來(lái)之后執(zhí)行的。
*/
13.1 一個(gè)新的 Repository 創(chuàng)建之后,默認(rèn)是對(duì)所有人開(kāi)放所有權(quán)限的。一個(gè)新建立的 Repository 的 fileattr.xml 文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<fileattr>
<directory>
<owner>test1</owner>
</directory>
</fileattr>