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