一杯清茶

          統計

          留言簿

          Oracle SQL/PLSQL

          PowerDesigner教程系列

          Struts2.0

          web開發

          三人行

          從事RCP開發的同行

          工作流和權限設置

          閱讀排行榜

          評論排行榜

          轉:WinCVS與CVSNT簡明使用手則

          1       前言:

          CVS是版本控制的利器,目前在Linux和Windows下都有不同版本;但是國內大多數應用介紹都是基于Linux等開放源代碼的開放性軟件組織,而且講解的也不系統,讓人摸不著頭腦;Windows下的CVS使用介紹更是了了無幾。

          本文是針對Windows的LAN環境下使用CVS的經驗介紹,一步一步的向您介紹如何配置和使用CVS的服務器端和客戶端。同時,本文只使用到了CVS當中最基本的東西,還有很多更為高級的東西,本文暫不涉及。下面是本文的另一個連接映射,歡迎大家討論使用,共同進步。

          文章連接:http://www.kuihua.net/book/list.asp?id=66

          論壇連接:http://www.kuihua.net/bbs/dispbbs.asp?boardID=1&RootID=670&ID=670

          2       安裝版本:

          2.1    服務器端(CVSNT)

          1.         本文使用的是CVSNT-2.0.4這是一個比較穩定的版本,不要使用最新的CVSNT-2.1.1本人在使用中發現有比較嚴重的Bug。

          2.         下載連接:http://www.cvsnt.org目前,它提供2.0.6和2.1.1版本的下載。

          3.         上面連接還提供源代碼,有興趣的朋友還可以下載下來仔細研究:)。

          4.         有心的朋友,仔細觀察就會發現:http://www.cvsnt.org并沒有提供任何客戶端的下載,那是因為CVS.exe既可以用于服務器端又可以用于客戶端,WinCVS是為了客戶端使用的方便而定制的外殼。(關于這一點,本人未得到任何證實,只是本人在使用過程中的一種體會,歡迎大家討論。)

          2.2    客戶端(WinCVS)

          1.         本文使用的是WinCVS-1.3b13這應該是一個最新版本:),本人在使用過程中并沒有發現有任何嚴重的Bug。

          2.         下載連接:http://sourceforge.net/projects/cvsgui/

          3.         此網站還提供豐富的CVS文檔和相關源代碼,以及多個OS下面的相關文檔和代碼;有收藏癖的朋友有福了:)。

          4.         WinCVS-1.3b13 使用的CVSNT的版本是CVSNT-2.0.2在與服務器端的CVSNT-2.0.4 版本配合使用時,未發現任何不兼容或沖突現象。

          5.         在本人的系統中用cvs version命令顯示的結果如下:

          Client: Concurrent Versions System (CVSNT) 2.0.2 (client/server)

          Server: Concurrent Versions System (CVSNT) 2.0.4 (client/server)

          3    服務器端(CVSNT)的安裝與配置:

          3.1    服務器端機器和環境配置:

          1.         操作系統:Windows 2000 Professional SP2中文版

          2.         機器名稱:Server

          3.         機器地址:192.168.0.6(內部IP)

          4.         網絡環境:100兆交換局域網

          5.         硬盤分區格式:FAT32NTFS都可以。

          6.         準備2個CVSNT的工作目錄:

          F:"KHRoot                    (存放自己源代碼的根目錄)

          F:"KHTemp                   (存放CVS出錯信息的目錄)

          7.         本機上存在有的用戶列表:(由NT或本機的使用者創建)

          Administrator                (系統管理員)

          Jackey                         (普通用戶)

          Goury                          (普通用戶)

          Riolee                         (普通用戶)

          3.2    安裝CVSNT:

          1.         下載CVSNT-2.0.4;使用administrator登陸到Server機器上。

          2.         雙擊自解壓的exe文件,選擇Full Install,其它按照默認方式安裝;安裝完畢后可以在服務控制器中發現多了2個服務:cvsnt與cvslocking

          3.         發送Service Control Panel到桌面,形成快捷方式。

          4.         安裝程序會自動將CVS安裝路徑,設置到系統的Path環境變量當中,因此使用者可以在控制臺(cmd)中任意位置執行cvs.exe,這一點對下面的配置很重要!!

          3.3    配置CVSNT服務器:

          1.         雙擊Service Control Panel快捷方式,在Service Status頁面,確認2個服務正常和穩定運行。

          2.         選擇Repository頁面,點按Add按鈕,選擇已經準備好的F:"KHRoot這個目錄,確認,OK,Yes,這時會在F:"KHRoot下面建立CVSRoot目錄,這是CVS默認的管理目錄(默認模塊)。如果報錯,那是系統Path路徑未設置正確。

          3.         選擇Advanced頁面,勾上Use local users for pserver ...,(Why? I don’t know!J),在Temporary欄選擇已經準備好的F:"KHTemp,確認,OK。

          4.         點按【應用】按鈕,確認,退出,OK,搞定!!

          3.4    小結:

          1.         至此,CVSNT服務器端基本配置完畢,下面進行WinCVS的使用和管理。

          2.         由于CVS支持遠程管理,也就是客戶端與服務器集成的特性,因此,我們將添加用戶、權限控制、模塊維護等所有的管理工作都放到遠端(WinCVS)進行管理,服務器端這時可以Ctrl+Atl+Del進入鎖定狀態了,下面的所有工作都交給遠端的WinCVS來進行管理。

          4       客戶端(WinCVS)的安裝與配置:

          4.1    客戶端機器和環境配置:

          1.         操作系統:Windows 2000 Professional SP2中文版

          2.         機器名稱:YCW2000

          3.         機器地址:192.168.0.2(內部IP)

          4.         網絡環境:100兆交換局域網,可以直接訪問到Server

          5.         硬盤分區格式:FAT32NTFS都可以。

          4.2    安裝WinCVS:

          1.         下載WinCVS 1.3b13,全部按照默認安裝就可以了。

          2.         啟動WinCVS,開始使用。特別注意:以下的所有操作都是在YCW2000(192.168.0.2)這臺機器上遠程完成的,此時的Server(192.168.0.6)主機已經進入了鎖定狀態。

          5       管理員使用WinCVS進行遠程管理:

          5.1    配置WinCVS成管理員狀態:

          1.         準備管理員工作目錄:(在YCW2000機器上)

          E:"CVSClient"Admin              (管理員工作目錄)

          E:"CVSTemp                        (WinCVS臨時目錄)

          2.         第一次啟動WinCVS時會自動彈出Preferences配置頁面,也可以通過Admin=>Preference菜單進入;第一次使用時需要配置如下的3個頁面:

          l         General頁面設置:

          注:按照圖示方式輸入即可,需要注意的是Path部分的格式是Unix路徑格式,它指的是CVSNT端設置的工作根目錄。

          l         CVS頁面設置:

          注:Home路徑是設置密碼等文件的存放位置,必須指定,否則在登陸時,WinCVS也要彈出設置框。這個Home路徑需要Python.exe這個外掛程序才有效。這里選擇已經準備好的路徑:E"CVSTemp

          l         WinCVS頁面設置:

          注:此頁面設置WinCVS的外掛編輯程序,通常使用UltraEdit比較方便。

          3.         設置管理員的工作路徑:可以點按圖標 ,或View=>Browse Location=>Change…菜單進行設置,選擇已經準備好的路徑:E:"CVSClient"Admin,確認,OK,這時此目錄將出現在WinCVS的左邊導航欄【Workspace】內。

          4.         至此,WinCVS就被配置成了遠程的管理員使用狀態,下面進行一般管理員需要的基本操作演練。演練的內容為:Administrator需要管理Jackey,Goury,Riolee三個用戶,分別為這3個用戶建立工作目錄,每個人只能訪問自己的工作目錄。同時,只有Administrator能夠進行權限分配,其它人沒有任何管理權限。

          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:"KHRoot"DirA

          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:"CVSClient"Admin分別建立三個目錄分別名為:Jackey,Goury,Riolee,作為臨時交換目錄。

          l         在新創建的每個目錄中用UltraEdit或拷貝一個Readme.txt作為引子文件!!:)

          l         然后,回到WinCVS,在【Workspace】欄的【Admin】目錄下形成如下的目錄結構:

          l         分別選中Goury,Jackey,Riolee,右鍵,點按【Import Module】,選擇【Continue】,其它全部使用默認值,【確定】,OK,完成上傳工作。

          l         仔細觀察【Output】窗口,確認都成功上傳了。

          l         轉移到系統的Explore程序中,刪除E:"CVSClient"Admin目錄下的Jackey,Goury,Riolee三個目錄。然后回到WinCVS當中。(一定要刪除!!!:)

          l         至此,就完成了工作目錄的上傳工作。

          7.         【Checkout】下載3個用戶的工作目錄到【Admin】目錄下:

          l         在【Workspace】欄選擇【Admin】目錄,右鍵,點按【Checkout Module…】,如下圖:

          l         選擇【…】,得到CVSNT上最新的模塊配置情況,彈出如下的信息框:

          l         這個結構圖就是剛才在modules當中編寫的模塊文件格式信息。選擇【Jackey工作目錄】,下載到YCW2000機器的E:"CVSClient"Admin目錄下。

          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         再次選中這個文件,執行【Commit】操作,得到這個文件最新版本。

          3.         由于CVS系統中本質上不會刪除任何目錄,因此,談不上對目錄的恢復,但是CVS系統默認情況下是要在用戶本機上(如:YCW2000

          posted on 2009-06-18 10:58 一杯清茶 閱讀(242) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 当涂县| 留坝县| 华蓥市| 广平县| 高邑县| 额济纳旗| 孝感市| 盈江县| 犍为县| 天气| 达尔| 楚雄市| 青岛市| 若羌县| 封丘县| 阿城市| 通渭县| 贡山| 通山县| 资溪县| 榆中县| 天门市| 项城市| 泗阳县| 澄迈县| 新建县| 蒲江县| 沁源县| 遵义县| 嵊泗县| 元氏县| 丁青县| 含山县| 泌阳县| 宜兴市| 玉山县| 宁津县| 浦东新区| 团风县| 乌兰浩特市| 石城县|