5.2 管理員進行管理演練:
1. 登陸遠程CVSNT:
l 選擇Admin=>Login菜單,默認設置,OK。
l 彈出密碼輸入框,確認,OK。注意觀察輸出框【OutPut】的返回結果。
2. Checkout默認模塊:(CVSRoot管理模塊)
l 在左邊導航欄【Workspace】內,選擇【Admin】點按右鍵,選擇【Checkout modules…】,在【Checkout settings】中輸入CVSRoot,確定,OK。如下圖:
l 如果成功的話,會在【Admin】欄下增加一個【CVSRoot】目錄。表示您已經將【CVSRoot】這個管理模塊下載到本地了。
3. CVS中目錄權限介紹:
l 系統支持的目錄權限列表:
r (讀取權限)
w (寫入權限)
c (創建和刪除權限)
n (沒有任何權限)
l 默認情況下,任何用戶都擁有任何目錄的所有權限。
l 任何情況下只有目錄的擁有者和Administrator纔有權力更改目錄的使用權限。下面將會介紹如何修改目錄權限和目錄的擁有者。
4. 修改CVSRoot的權限:只讓Administrator擁有rcw三種全部權限。
l 選中剛剛下載的【CVSRoot】模塊,【Ctrl+L】或Admin=>Command Line…,彈出Command Line Settings對話框,直接執行CVS命令。
l 取消所有用戶的默認權限:cvs chacl default:n 回車,OK,完成。
l 設置Administrator擁有所有權限:cvs chacl administrator:rcw 回車,OK,完成。
l 更改【CVSRoot】的擁有者:cvs chown administrator 回車,OK,完成。
l 查看【CVSRoot】的權限狀態:cvs lsacl 回車,OK,在【Output】中顯示:
Owner: administrator
default:n
administrator:rwc
l 【CVSRoot】的權限配置完畢。
5. 編寫代碼庫中的模塊文件,便於多用戶下載方便。
l 需要自己編寫的模塊文件格式如下:(實現基本功能)
【模塊一的描述】【n個空格或參數】【相對目錄路徑一(DirA)】
【模塊二的描述】【n個空格或參數】【相對目錄路徑二(DirB)】
……
【模塊X的描述】【n個空格或參數】【相對目錄路徑X(DirX)】
l 【描述信息】與【相對路徑】在字面上不一致時,需要使用-a參數。
l 【相對路徑】指的是CVS會自動帶上根路徑,這裏是F:KHRoot,所以上面例子的完整路徑爲:F:KHRootDirA
l 瞭解了模塊文件結構,現在來實際操作一把:雙擊【CVSRoot】模塊下的modules文件,用UltraEdit打開進行編輯。
l 爲Jackey,Goury,Riolee三個用戶分配工作目錄和完成其它模塊描述。
CVSRoot CVSRoot
Jackey工作目錄 -a Jackey
Goury工作目錄 -a Goury
Riolee工作目錄 -a Riolee
l 編輯完畢,存盤。回到WinCVS,選中modules這個文件【Ctlr+M】或右鍵選擇【Commit selection…】,默認設置,【確認】,OK,完成上傳。
6. 爲三個用戶分別上傳工作目錄:
l 在YCW2000機器上的E:CVSClientAdmin分別建立三個目錄分別名爲:Jackey,Goury,Riolee,作爲臨時交換目錄。
l 在新創建的每個目錄中用UltraEdit或拷貝一個Readme.txt作爲引子文件!!:)
l 然後,回到WinCVS,在【Workspace】欄的【Admin】目錄下形成如下的目錄結構:
l 分別選中Goury,Jackey,Riolee,右鍵,點按【Import Module】,選擇【Continue】,其它全部使用默認值,【確定】,OK,完成上傳工作。
l 仔細觀察【Output】窗口,確認都成功上傳了。
l 轉移到系統的Explore程序中,刪除E:CVSClientAdmin目錄下的Jackey,Goury,Riolee三個目錄。然後回到WinCVS當中。(一定要刪除!!!:)
l 至此,就完成了工作目錄的上傳工作。
7. 【Checkout】下載3個用戶的工作目錄到【Admin】目錄下:
l 在【Workspace】欄選擇【Admin】目錄,右鍵,點按【Checkout Module…】,如下圖:
l 選擇【…】,得到CVSNT上最新的模塊配置情況,彈出如下的信息框:
l 這個結構圖就是剛纔在modules當中編寫的模塊文件格式信息。選擇【Jackey工作目錄】,下載到YCW2000機器的E:CVSClientAdmin目錄下。
l 按照以上操作,依次分別下載【Goury工作目錄】和【Riolee工作目錄】。形成如下狀態:
8. 爲三個用戶分別設置各自目錄的訪問權限。(只有自己才能訪問自己的工作目錄)
l 選中【Goury】目錄,【Ctrl+L】或Admin=>Command Line…,彈出Command Line Settings對話框,直接執行CVS命令。
l 取消所有用戶的默認權限:cvs chacl default:n 回車,OK,完成。
l 設置Goury擁有所有權限:cvs chacl goury:rcw 回車,OK,完成。
l 查看【CVSRoot】的權限狀態:cvs lsacl 回車,OK,在【Output】中顯示:
Owner: administrator
default:n
goury:rwc
l 按照以上的方法依次分別設置【Jackey】與【Riolee】的工作目錄訪問權限。
l 至此,完成了3個用戶的目錄權限分配。注意,雖然Administrator也沒有權力再次【Checkout】那3個用戶的工作目錄,但是它是這些目錄的擁有者又是Administrator,因此,只有它纔有權力更改這些目錄的訪問權限。
9. CVSNT系統中的用戶管理原則:
l CVSNT的用戶與本機(這裏是Server機器)上的NT用戶是相關聯的,即CVSNT用的全是本機上存在的已有用戶,因此在默認情況下可以不用設置任何用戶名,只要使用本機上已經存在的用戶名就可以用WinCVS進行登陸。
l 只有用Administrator身份登陸到CVSNT系統中,纔有權力進行新用戶的創建和刪除。
l 使用CVS創建的新用戶,必須與服務器端機器上的NT用戶相綁定,才能生效;因此,這個新用戶實際上是綁定它的NT用戶的一個替身,在CVS系統中稱爲“別名”。
l 一個NT用戶可以有多個‘替身’或‘別名’,充當多個CVS用戶。
10. 用WinCVS進行新用戶的添加和刪除。(確保使用Administrator登陸)
l 【Ctrl+L】或Admin=>Command Line…,彈出Command Line Settings對話框,直接執行CVS命令。
l 添加新用戶【Killer】:cvs passwd -a Killer 回車,設置密碼,OK,完成。
l 綁定【Killer】到【Jackey】:cvs passwd -r Jackey Killer 回車,設置密碼,OK,完成。
l 兩次輸入的密碼可以不同,但以第二次輸入的密碼爲最終密碼。
l 刪除用戶【Killer】:cvs passwd -X Killer 回車,OK,完成。
l 其它特殊的功能查看passwd命令的幫助。
11. 使用完畢後,一定要【Logout】,因爲WinCVS退出時並不會自動註銷自己在遠端的會話;這樣做是爲了防止其它人接着打開WinCVS,不用登陸就可以完成你能進行的所有操作了。
6 WinCVS中常見的特殊操作:
6.1 如何刪除下載的文件或目錄:
1. 選中下載的某個或多個文件,執行【Remove】命令。
2. 再次選中這些文件,執行【Commit】命令就完成了刪除文件的操作。
3. 本質上CVS是不會刪除任何文件和目錄的,即使是執行了以上操作,刪除了某些文件,遠端CVS實際執行的是將提交刪除的文件放到了一個叫【Attic】的目錄下,因此,這些被刪除的文件是可以通過一定的方法恢復的。
6.2 如何恢復已經刪除的文件或目錄:
1. 在執行了【Remove】命令之後恢復文件。
l 【Ctrl+L】直接輸入命令cvs add xxxxx,或執行【Add Selection】界面操作。
l 這樣就可以直接恢復還未提交的刪除文件。
2. 在執行了【Commit】命令之後恢復文件。
l 只能用【Ctrl+L】直接輸入命令cvs add xxxxx,這時會得到一個空的文件。
l 選中這個空文件,執行【Update】操作,得到這個文件的實體。
l 再次選中這個文件,執