clearcasse 命令

clearcase常用命令集錦


1.將整個目錄導入clearcase 
clearfsimport -r‘源路徑’ ‘目標路徑’

將整個目錄導入clearcase
clearfsimport -recurse /xxx/xxx/xxx/src /view/zhuj/home/vobs/cc_account
/xxx/xxx/xxx/src目錄(包括此目錄下的所有目錄和文件)被導入/view/zhuj/home/vobs/cc_account中(/view/zhuj/home/vobs/cc_account/src)

 

2.加鎖

find . -name '*.*' -exec 'cleartool lock nuser userame1,username2 "%CLEARCASE_PN%"'

3.解鎖

find . -name '*.*' -exec 'cleartool unlock "%CLEARCASE_PN%"'

4.轉換格式

chtype -f compressed_file “fileName”

5.查看VOB的基本信息和UUID

des -l vob:.

6.刪除視圖

rmview -uuid "UUID"

7.刪除lost+found

find . -name '*.*' -exec 'cleartool rmelem -f "%CLEARCASE_PN%"'

8.查詢某一天的修改記錄

cleartool lshis -r -since 07-dec

9.最基本的操作 
cleartool co -nc filename 
cleartool ci -nc filename

10.查看自己總共co了多少文件 
cleartool lscheckout -cview –me -vobs

11.make目錄和文件 
cleartool mkdir -c comment newdirectory

cleartool mkelem -c comment newfilename

12.主線、分支文件合併 
//查找需要合併的文件 
cleartool findmerge . -fversion /main/TEST_Path -print 
//比較文件不同 
cleartool diff filename [url=mailto:file.cpp@@/main/xxxx_path/LATEST]filename@@/main/TEST_Path/LATEST 
//查看最新版本 
cleartool lsvtree filename

//合併 
cleartool merge -to filename [url=mailto:file.cpp@@/main/xxxx_path/LATEST]filename @@/main/TEST_path/LATEST [url=mailto:file.cpp@@/main/LATEST]filename @@/main/LATEST

13.標籤相關 
cleartool mklbtype -nc TEST_LABEL 
cleartool mklabel -r TEST_LABEL filename 
cleartool rmtype lbtype:TEST_LABEL 
//給所有打上TEST_LABEL標籤的文件打上TEST_LABEL標籤 
cleartool mklabel -replace -version /main/TEST_LABEL TEST_LABEL * 
//查找打上TEST_LABEL標籤的所有文件 
cleartool find . -version "lbtype(TEST_LABEL)" -print 
//查找打上TEST_LABEL和TEST_LABEL1標籤的文件 
cleartool find . -element 'lbtype_sub(TEST_LABEL) && lbtype_sub(TEST_LABEL1)' -print

14.察看某目錄下的文件

ls

15.man/help命令 
cleartool man xxx 
cleartool help xxx

16.放棄co某個文件 
cleartool unco -keep filename 
cleartool unco -rm filename

17.更改VOB的Owner:

cleartool protectvob –chown root /vob/vob.vbs

18. 更改VOB的Group:

cleartool protectvob –chgrp alluser /vob/vob.vbs

19.增加Additional Group:

cleartool protectvob –add_group group1 /vob/vob.vbs

20.刪除Additional Group:

cleartool protectvob –delete_group group1 /vob/vob.vbs

21. 更改group、owner、mod

protect -r -chgrp groupname–chown username -chmod 770 .

22.創建VOB

cleartool mkvob -tag /vobtags/test_code -c "Test" "D:\Data\Tets.vbs"

23. Mount vob 
Cleartool mount /vobtags/vob 
24. 創建視圖 
cleartool mkview –tag test /ccvob/views/test.vws 
25. 設置當前視圖 
cleartool setview test

26.設置當前的activity 
cleartool setactivity activityname

27. Check out 
Check out一個文件

Cleartool checkout [-reserve][-unreserve] filename


Check out前目錄

Cleartool checkout .


Check out當前目錄下所有文件

Cleartool Checkout –nc *.*

Check out當前目錄下所有的文件和目錄中的文件

cleartool find . $file -exec ‘cleartool checkout -nc $CLEARCASE_PN’ 
28. Check in 
Check in 一個文件

Cleartool checkin filename

Check in 當前目錄 
Cleartool checkin .

Check in 當前目錄下所有文件.

Cleartool Checkin –nc *.*

Check in當前目錄下所有的文件和目錄中的文件

cleartool find . $file -exec ‘cleartool checkin -nc –ide $CLEARCASE_PN’

以上內容來自:http://hi.baidu.com/is%CC%EC%B2%C5/blog/item/36bfbfc83cced1117f3e6fa0.html

 

常用命令:
創建view:clt mkview -tag view_abcd /view_store/view_abcd.vws
設置view: clt setview view_abcd
編輯config specification: clt edcs

創建branch type:clt mkbrtype dbg_branch1_comments
在某個文件的當前branch上, 拉出一個branch:
clt mkbranch 
dbg_branch1_comments filename.c

now you have make branch on the file, and checked it out.
you can edit it with gvim.
After changed codes, you can complie it successfully, and test the result, you can check it in.
clt ci filename.c
If you want to check out it again:
clt co filename.c

To change the branch name to a formula name you can use the command:
clt rename brtype:dbg_branch1_comments 
brtype:crnumber_branch1_comments

To see the version tree of a file:
clt lsvtree -g filename.c

To see which files is included in a branch, you can edit a script like this find_branch.sh:

echo "$1"
cleartool find -avobs -element "brtype("$1")" -nxn -print | xargs cleart
ool ls -s|grep "$1"

To compare files, I write a useful script file mydiff.

You can use xcc& to open graphic clearcase. So you can do most thing through the menu.


 

 

clearcase實用命令

查找分支上的文件
find . -branch brtype(branchname) -print 
創建分支
mkbrtype -c "comment" branchname 
創建Label
mklbtype -c "comment" labelname 
用於 cleartool find 查詢:
cleartool find -all -version “lbtype(REL1)” -print
find . -version 'lbtype(LABEL)' -print 
鎖分支命令
lock brtype:branchname 
創建trigger
trigger已存在
mktrtype mktrtype -replace -element -all -preop mkelem -nusers shiquan -exec http://www.cnblogs.com/samcn/admin/file://192.168.1.5/cc_trigger/false.bat NO_RM_MK
trigger不存在
mktrtype mktrtype -element -all -preop mkelem -nusers shiquan -exec http://www.cnblogs.com/samcn/admin/file://192.168.1.5/cc_trigger/false.bat NO_RM_MK
日常開發人員常用命令

開發人員常用命令
1.       建立vob
mkvob –tag /vobtags/vob1 –c “ VOB for project1” /vobstore/vob1.vbs
2.       Mount vob
Cleartool mount /vobtags/vob1
3.       創建視圖
cleartool mkview –tag test1 /ccvob/views/test1.vws
4.       設置當前視圖
cleartool setview test1
5.       在VOB的根目錄下到入數據:
clearfsimport –recurse –c “ comments “ /home/setup/* . ,注意命令的最後爲圓點,表示當前目錄。
6.       改變VOB的Owner: 
cleartool protectvob –chown root /vobstore/vob1.vbs
7.       改變VOB的Group:
cleartool protectvob –chgrp alluser /vobstore/vob1.vbs
8.       增加Additional Group:
cleartool protectvob –add_group group1 /vobstore/vob1.vbs
9.       刪除Additional Group:
cleartool protectvob –delete_group group1 /vobstore/vob1.vbs
修改vob中數據的權限信息
10.   將jmccboss VOB 中所有元素Owner 改成ccadmin,Group改成jmccboss:
Cleartool protect –chown ccadmin –chgrp jmccboss .
.爲vob根目錄
11.   將jmccboss VOB 中所有元素權限 改成對ccadmin(rwx),jmccboss(rwx),其他VOB附屬組成員(r-x):
例: Cleartool protect –recurse –chmod 775 . ,
12.   Mount vob
Cleartool mount /vobtags/vob1
13.   創建視圖
cleartool mkview –tag test1 /ccvob/views/test1.vws
14.   設置當前視圖
cleartool setview test1
15.   在VOB的根目錄下到入數據:
clearfsimport –recurse –c “ comments “ /home/setup/* . ,注意命令的最後爲圓點,表示當前目錄。
16.   Check out 
Cleartool checkout [-reserve][-unreserve] b.c    Check out一個文件
Cleartool checkout .   Check out當前目錄
Cleartool Checkout –nc *.*    Check out當前目錄下所有文件
cleartool find . $file -exec ‘cleartool checkout -nc $CLEARCASE_PN’ 
Check out當前目錄下所有的文件和目錄中的文件
17.   Check in
Cleartool checkin b.c    Check in 一個文件
Cleartool checkin .    Check in 當前目錄
Cleartool Checkin –nc *.*   Check in 當前目錄下所有文件.
cleartool find . $file -exec ‘cleartool checkin -nc –ide $CLEARCASE_PN’ 
Check in當前目錄下所有的文件和目錄中的文件 
18.   建立一個snapshot view
cleartool mkview –tag pat_2_snapshot_view –snapshot /viewstore/pat/myviews.vws
19.   編輯config spe
Cleartool edcs
20.   更新snapshot view
cleartool update pat_2_snapshot_view
21.設置當前的activity
cleartool setactivity activityname
      gaibian leixing: chtype binary_delta_file Estonian.r 
錯誤 :clearfsimport: Error: Trouble was encountered importing the following elements:
        D:\work\shiquan_study\Broadcom070122\BCM_R2.10_A1\mmi\design\gui\res\ffs_preload\CD_5_2_6.dm





VOB

查看當前VOB的基本信息和UUID

ct des -l vob: .

 

創建一個vob在/usr/vobstore/下,並打上“/vobs/project3”的tag.

mkvob -tag /vobs/project3 -c "main development sources"  /usr/vobstore/project3.vbs

view

創建和刪除view

創建view:

$ cleartool mkview -tag MY_VIEW  /../ MY_VIEW.vws

設置當前視圖

$ cleartool setview MY_VIEW

刪除view

$ cleartool rmview -tag <view_name>

查看view名字爲“XXX”的所有view

$ cleartool lsview | grep XXX

 

各類type

lstype, rmtype 可以查看、刪除 各類type(包含lable/branch/triger等)

 

$ ct man rmtype

 

 type-kind     One of                                                

                                                                      

                attype        Attribute type                           

                                                                      

                brtype        Branch type                             

                                                                      

                eltype        Element type                            

                                                                      

                hltype        Hyperlink type                          

                                                                       

                lbtype        Label type                              

                                                                      

                trtype        Trigger type  

 

Label

創建類型

$cleartool mklbtype -nc label-name (儘量大寫)

 

添加

單個文件

$ct mklabel label-name path                                                                                           

 

$ct mklabel -replace label-name

 

把當前目錄下的所有文件的最新版本上打標籤:

$ct mklabel -recurse -rep label-name -ver /main/LATEST .

 

給所有打上TEST_LABEL標籤的文件打上TEST_LABEL2標籤

cleartool mklabel -replace -version /main/TEST_LABEL TEST_LABEL2 *

 

 

查找當前目錄下版本爲/main/LATEST的,並且/main/LATEST上沒有LABEL_1標籤的文件,並且創建人是tom的文件,打上LABEL_1標籤

ct find . -version "{version(/main/LATEST) && ! lbtype(LABEL_1) && created_by(tom)}" -follow -print | xargs cleartool mklabel -rep LABEL_1  

 

移動

$ct mklabel -rep -nc label-name 2.log            

刪除

$cleartool rmlabel label-name 2.log

 

查看

查看某個element版本的具體有哪些標籤

ct desc xbean.xml@@/main/3

 

//查找當前目錄下打上CDU標籤的所有文件

cleartool find . -version "lbtype(CDU)" –print

(find 是遞歸查找)

 

//如果子目錄有link的文件或者文件夾也需要查找,需要加一個參數:-follow

cleartool find . -version "lbtype(CDU)" -print -follow

 

//按照邏輯表達式查找

ct find –version 'version(\main\LATEST) && ! lbtype(REL3)' –exec 'cleartool mklabel –replace REL3 %CLEARCASE_XPN%' 

 

//查找打上TEST_LABEL和TEST_LABEL2標籤的文件

cleartool find . -element 'lbtype_sub(TEST_LABEL) && lbtype_sub(TEST_LABEL2)' -print

Branch

創建分支

mkbrtype -c "comment" branchname

 從某個文件的最新版本建立分支

當config.spec初始爲:

element * CHECKEDOUT

element * /main/LATEST

執行:

$ ct mkbrtype -c "comment" branch_test

Created branch type "branch_test".

$ct mkbranch -nc branch_test 2.log

再修改config.spec爲:

element * CHECKEDOUT

element * .../branch_test/LATEST   (取branch_test 這個branch的最新版本)

element * /main/LATEST

以後再co 2.log文件,就都是在branch_test上操作了

 

從某個文件的某個版本建立分支

分支名爲:bugfix

$ ct mkbrtype -c "comment" bugfix

$ ct mkbranch -nc bugfix hello.c@@/main/3

   Created branch "bugfix" from "hello.c" version "/main/3".

   Checked out "hello.c" from version "/main/bugfix/0".

刪除branch

刪除當前目錄的branch (main/sp_main)

ct rmbranch .@@/main/sp_main

 

version

1.         查看element的版本樹

lsvtree: Lists version tree of an element

cleartool lsvt preferences.jsp

 

2.         刪除version

刪除version: rmver  (Removes a version from the version tree of an element)

刪除後,該element的後續版本纔不會看見,但是前面版本都可以看見;

要徹底從vob刪除,就需要管理員權限,此方法不推薦

 

$ ct lsvt .

.@@/main

.@@/main/1

.@@/main/7

$ ct rmver .@@/main/7

Removing these versions of ".":

  /main/7

Remove versions?  [no] yes

Removed versions of ".".

$ ct lsvt .

.@@/main

.@@/main/1

.@@/main/6

 

$ ct ci -nc .

checked in "." version "/main/8".

所以,刪除一個文件的多個version後,下次version還是依原來刪除前的version進行

 

3.         查看element操作歷史

$ ct lshistory preferences.jsp

 

4.         比較不同version的文件

$ ct diff 1.html@@/main/8 1.html@@/main/9

 

checkin

 

l         進行checkin

Checkin單個文件

$ct ci -nc xxx.jsp   (-nc就是無註釋)

 

Checkin當前view下的當前目錄下的所有文件(遞歸)

       $ ct lsco -cview -r -s |xargs cleartool ci –nc

 

       查看自己CO了多少文件

ct lsco -cview -avobs

if you want check in all the elements listed in one command, run

ct lsco -cview -avobs | awk -F "\"" "{print \$2}"| xargs -n1 cleartool ci -nc

 

l         創建提交新文件

1.         單個新文件

make目錄:cleartool mkdir -c comment newdirectory

make文件:cleartool mkelem -c comment newfilename

 

make文件:

create a new file:先co父目錄,再處理下面的文件(比如添加、刪除),和linux目錄權限管理一樣的原理,添加、刪除了父目錄的子文件相當於修改了父目錄的內容

 

$ ct co .

$ cp xxx.sh .

$ ct mkelem -nc xxx.sh

$ cd ../

$ ct lsco -cview -r -s

$ ct lsco -cview -r -s | xargs cleartool ci -nc

$ ls

 

或者使用:

$ct mkelem -nc -master -mkpath xxx.sh

$ct ci

 

      

2.         單個或者多個新文件(遞歸)

遞歸checkin當前目錄下的所有新加的文件

首先,千萬不要co父目錄

$cleartool lsprivate . | xargs cleartool mkelem -nc -master -mkpath

$cleartool lsco -r -s | xargs cleartool ci –nc

cleartool lsco -s | xargs cleartool ci –nc

 

3.         checkin多個文件(遞歸)

Check in 當前目錄

Cleartool checkin .

 

Check in 當前目錄下所有文件.

Cleartool Checkin –nc *.*

 

Check in當前目錄下所有的文件和目錄中的文件

cleartool find . $file -exec ‘cleartool checkin -nc –ide $CLEARCASE_PN’

 

checkout

l         查看checkout

 

*  查看當前目錄下co的文件.

   非遞歸:$ ct lscheckout

   遞歸:  $ct lscheckout –r

 

*  查看所有人的所有co文件

       ct lscheckout -avobs

 

*  查看我的所有co文件

   ct lscheckout -avobs -me

  

*  查看我的當前view的所有的co文件

       cleartool lscheckout -cview -me -avobs   

 

*  查看我的當前view的當前目錄下及以下(遞歸)的co文件

       $ ct lsco -cview -r  

       $ ct lsco -cview -r -s     (-s = -short: short顯示)

 

l         進行checkout

$ct co -nc xxx.jsp   (-nc就是無註釋的方式co)

 

Check out當前目錄下所有文件

Cleartool Checkout –nc *.*

 

Check out當前目錄下所有的文件和目錄中的文件

cleartool find . $file -exec ‘cleartool checkout -nc $CLEARCASE_PN’

 

 

l         撤銷checkout

$ct unco -keep filename

 (默認會keep,保留本地自己的文件,會copy一份並另外取個.keep名字)

$ct unco -rm filename

(刪除本地自己的文件)

 

撤銷當前目錄下所有co

$ct lsco -cview -r -s | xargs cleartool unco -rm 

刪除文件

刪除clearcase一個目錄下的文件:

$ ct co .

$ ct rm 1.log  (注:不用checkout 1.log文件必須使用ct rm,如果不加ctrm,只是刪除了你的view的本地文件,沒有對CC的服務器產生影響)

$ ll

total 0

$ ct ci -nc .

 

   當錯誤刪除某個文件file1

   可以使用以下命令還原:

   ct ln .@@/main/versionX/file1 file1

 


clearcase縮寫爲ct,在linux下可以使用alias,在windows下可以使用doskeys.


1. 是文件或目錄可編輯

ct co -nc yourfile/yourdir

2. 修改完成文件後,提交

ct ci -nc yourfile/yourdir

3. 取消修改

ct unco yourfile/yourdir

4. 給clearcase中追加新的文件或者目錄

ct co -nc parent_dir

ct mkelem yourfile/yourdir(這種情況是創建)

ct mkelem -mkpath yourfile/yourdir(這種情況是文件或目錄已經存在)

ct ci -nc parent_dir

5. 刪除文件或目錄(這裏的刪除和ct rmelem不一樣,我會寫文章說明)

ct coparent_dir
ct rmname yourfile/yourdir
ct ci parent_dir

6. 顯示當前的工作view

ct pwv

7. 顯示當前view的conf-spec

ct catcs

8.顯示出當前目錄和子目錄下被check out出來的element

ct lsco -cview -rec

9.顯示出當前目錄和子目錄下自己新建的目錄或文件

ct ls -r -view_only
ct lsprivate

10.顯示圖形化的diff

ct diff -g -pre yourelement
ct diff -g yourelement yourelement@@/main/5 

11. 顯示版本tree

ct lsvtree -g yourelement

12.獲得element的具體信息

ct describe yourelement

13. 其他

cleartool find
cleartool lstype
cleartool man fmt_ccase
clearimport


 


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章