您的位置:軟件測試 > 開源軟件測試 > 開源配置管理工具 > cvs
使用CVS進行項目開發(fā)管理
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/2/17 16:40:52 ] 推薦標(biāo)簽:

  
  CVS使用
  下面我們講一下CVS的使用和管理。
  
  在使用CVS之前,必須要指定CVS的根路徑,不像RCS是工作在工作目錄下的RCS目錄下。指定CVS路徑的方法有兩種,一種是使用cvs-d 選項指定,如:
  cvs -d /home/kerberos/cvsroot 指定/home/kerberos/cvsroot為CVS倉庫的路徑。
  另外一種是使用CVSROOT環(huán)境變量指定(bash下):
  export CVSROOT=/home/kerberos/cvsroot
  
  無論何種方式,每當(dāng)重新開啟一次終端會話,CVS倉庫的路徑都要重新設(shè)置,你可以把以上的后者加入到其實目錄下的.bashrc文件中,這樣開啟一次終端會話后,不需要重新設(shè)置了(對于其他的環(huán)境變量的設(shè)置也是如此)。如果你的CVSROOT環(huán)境變量已經(jīng)存在,可以使用cvs -d 選項來指定不同于CVSROOT所指定的CVS倉庫。然后初始化CVS倉庫,建立CVS維護所需要的一些文件和信息,CVS把這些信息存放在CVS倉庫主目錄的CVSROOT目錄下。這些文件,除了modules ,其他文件都沒有手動修改的必要,modules 文件定義了CVS的導(dǎo)出模塊在CVS倉庫中的位置,這一點在從CVS倉庫中導(dǎo)出一個深層目錄時是非常方便的。
  
  cvs init
  初始化之后,我們使用cvs import來把需要進行版本維護的開發(fā)項目的目錄結(jié)構(gòu)導(dǎo)入到CVS倉庫中,如下:
  建立好項目的目錄結(jié)構(gòu)以后,當(dāng)前的testprj目錄的結(jié)構(gòu)是這樣的:
  
  [kerberos@power zhyf]$ tree testprj
  testprj
  |-- admin
  |-- doc
  |-- include
  |-- libs
  `-- src
  |-- include
  `-- main
  
  7 directories, 0 files
  cvs import有三個參數(shù):第一個是這個目錄樹在CVS倉庫中的模塊名稱,第二個是發(fā)布者的一個標(biāo)志,第三個是這個項目的版本標(biāo)記(tag)。下面,我們把testprj導(dǎo)入到CVS倉庫中,使用testprj 模塊名稱。
  [kerberos@power testprj]$cvs import testprj KERBEROS INITVER
  
  執(zhí)行命令以后,CVS會調(diào)用CVSEDITOR指定的編輯器來讓你輸入日志,如果CVSEDITOR沒有定義,缺省調(diào)用vi,可以使用export命令指定你自己喜歡使用的編輯器。輸入日志以后,CVS把當(dāng)前的目錄結(jié)構(gòu)導(dǎo)入CVS倉庫中,并且使用testprj這個模塊名稱,在導(dǎo)出文件時,可以使用
  cvs co testprj 來導(dǎo)出。
  "/tmp/cvscVxZnW" 5L, 242C written
  cvs import: Importing /home/zhyf/cvsroot/testprj/admin
  cvs import: Importing /home/zhyf/cvsroot/testprj/libs
  cvs import: Importing /home/zhyf/cvsroot/testprj/src
  cvs import: Importing /home/zhyf/cvsroot/testprj/src/include
  cvs import: Importing /home/zhyf/cvsroot/testprj/src/main
  cvs import: Importing /home/zhyf/cvsroot/testprj/doc
  cvs import: Importing /home/zhyf/cvsroot/testprj/include
  
  No conflicts created by this import
  
  看一下cvsroot目錄中的結(jié)構(gòu)是不是和testprj 的相同:
  
  ../cvsroot
  |-- CVSROOT
  | |-- checkoutlist
  | |-- checkoutlist,v
  | ........................... CVS的倉庫信息,省略..
  | ...........................
  `-- testprj
  |-- admin
  |-- doc
  |-- include
  |-- libs
  `-- src
  |-- include
  `-- main
  
  這里testprj 模塊的結(jié)構(gòu)和我們自己的testprj的目錄結(jié)構(gòu)是一樣的。
  這樣,當(dāng)需要再次使用這些源代碼時,可以簡單的使用cvs co模塊名來導(dǎo)出目錄樹和文件了。導(dǎo)出任意具有寫權(quán)限的目錄下:
  [kerberos@power testprj]$ cd ..
  [kerberos@power zhyf]$ rm -rf testprj 刪除testprj目錄
  [kerberos@power zhyf]$ cvs co testprj 重新導(dǎo)出
  cvs checkout: Updating testprj
  cvs checkout: Updating testprj/admin
  cvs checkout: Updating testprj/doc
  cvs checkout: Updating testprj/include
  cvs checkout: Updating testprj/libs
  cvs checkout: Updating testprj/src
  cvs checkout: Updating testprj/src/include
  cvs checkout: Updating testprj/src/main
  [kerberos@power zhyf]$ tree testprj
  testprj
  |-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  |-- admin
  | `-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  |-- doc
  | `-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  |-- include
  | `-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  |-- libs
  | `-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  `-- src
  |-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  |-- include
  | `-- CVS
  | |-- Entries
  | |-- Repository
  | `-- Root
  `-- main
  `-- CVS
  |-- Entries
  |-- Repository
  `-- Root

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd