例:
$cvs rtag –b –r 1.2 tlb-1 SOURCE
以后要訪問該分支版本,可以使用“-r” 選項
$cvs checkout –r tlb-1 SOURCE
從當前檢出的版本切換到一個分支版本:
$cvs update –r tlb-1 SOURCE
使用下面的命令可以看版本信息:
cvs status [–vlR] files
其中,參數(shù)的意義如下:
-v 顯示所有信息
-l 不顯示子目錄信息
-R 顯示子目錄信息
命令:cvs update –j rev module 把當前所做的修改與指定版本的文件進行合并。
如:主干 1.1 1.2 1.3 1.4 1.5 1.6 ↓
分支tlb-1 1.2.2.1 1.2.2.2 1.2.2.3
如果要合并分支tlb-1上的版本:
$cvs update –j 1.2.2.3 –j tlb-1 test.c
其中1.2.2.3可以通過tag命令生成一個容易記憶的標識。
如果要合并分支tlb-1到主干上1.2 :
$cvs update –j tlb-1 test.c
如果要合并主干上的不同版本(注意順序很重要,同時在指定版本之間的所有修改將被丟棄):
$cvs update –j 1.5 –j 1.2 test.c
如果在不同版本之間模塊的文件有增減,則可以:
$cvs update –A
$cvs updata –jbranch_name
四、命令集
在本章的例子中,介紹了很多,命令的詳細用法,其大多數(shù)是以應用的角度,來分析的.實際上.cvs 擁有,大量的命令.如gclearcase/" target="_blank" >cc 一樣cvs 常用的命令也不是很多,在本節(jié)中,我們列出了一些常用的命令.力圖不和以上各節(jié)中介紹的相重復.當然,限于時間和水平,在此也不可能列出cvs 所有的命令.有興趣的朋友.可以,參考,cvs的說明文檔,與linux 的man文檔,詳細學習,也可來此做出指導
1.檢出源文件
cvs checkout [-r rev][-D date][-d dir][-j merg1] [-j merg2] modules
其中,參數(shù)的意義如下:
-r 檢出指定版本的模塊
-D 檢出指定日期的模塊
-d 檢出指定目錄而不是模塊
-j 合并當前版本和指定版本
使用下面的命令會檢出剛才生成的模塊,并在當前目錄下生成與文件倉庫中完全一樣的目錄結構:
usr$ cvs checkout project
usr$ cvs checkout project/src/main
cvs checkout的詳細用法見cvs -H checkout的輸出.
2.CVS commit 命令 在對文件的修改完成后,用cvs commit提交到倉庫.
cvs commit -m "Update by xxxxx" project
cvs commit -m "Update main.c" main.c
提交完成后,當前的版本號會更新,如原來為1.1,現(xiàn)為1.2. 這兩個版本都在倉庫的主干(maintrunk)上.
-m選項可以記錄有關提交的注釋.如果沒有指定-m選項,在環(huán)境變量CVSEDITOR中指定的編輯器被調(diào)用(vi是缺省的),提示鍵入文本,修改記錄注釋.
3.刪除、增加、重命名文件和目錄
cvs add [-k kflags][-m message] files...
其中,參數(shù)的意義如下:
-k 指定以后該文件的缺省檢出目錄
-m 對文件的描述
上述命令會加入一個新的文件到文件倉庫里,但直到使用了提交命令它才會真正更新文件倉庫。
cvs remove [options] files
上述命令會從文件倉庫中刪除文件,但也要到提交之后才有作用。
例1:增加文件
$cvs checkout SOURCE
$cd cvstest/c
$touch test.c
$cvs add test.c
$cvs commit –m “add test.c”
例2:刪除文件
$cvs checkout SOURCE
$cd cvstest/c
$rm test.c
$cvs remove test.c
使用 –f 選項能上面兩步合做一步。
$cvs remove –f test.c
如果在提交之前想恢復剛才刪除的文件,可以如下:
$cvs add test.c