`

clearcase 操作指南

阅读更多

请注意:不同版本,命令用法有可能不同

1.将整个目录导入clearcase
clearfsimport -r
‘源路径’‘目标路径’
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 -avobs
11.make
目录和文件
cleartool mkdir -c comment newdirectory
cleartool mkelem -c comment newfilename
12.
主线、分支文件合并
//查找需要合并的文件
cleartool findmerge . -fversion /main/TEST_Path -print 
//
比较文件不同
cleartool diff filename filename@@/main/TEST_Path/LATEST

//查看最新版本
cleartool lsvtree filename
//
合并
cleartool merge -to filename  filename @@/main/TEST_path/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_LABELTEST_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.
更改VOBOwner:
cleartool protectvob –chown root  /vob/vob.vbs
18.
更改VOBGroup:
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.
更改groupownermod
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’

 

 

Clearcase命令深入

Some useful clearcase commands

a .Create branches branch_name1 from /main/0, merge them from other branch branch_name2

clt find . -version 'version(.../main/0)' -print -exec 'cleartool mkbranch -nc -version /main/0 branch_name1 $CLEARCASE_PN;cleartool merge -to $CLEARCASE_PN -version /main/branch_name2/LATEST'

b. check in all the checkedout elements 

        clt lsco -cview -recurse -short .|xargs cleartool ci -nc

c. label the last version of branch branch_name

        clt find . -version 'version(/main/brach_name/LATEST)' -print -exec 'cleartool mklabel -nc LABEL_NAME $CLEARCASE_PN'

        use this command to check whether all the files are labeld:

        clt find . -version 'version(/main/brach_name/LATEST) &&! lbtype(LABEL_NAME)' -print

 d. check the labeled files. This command print the files labeled by LABEL_04, but LABEL_03.

        clt find . -version 'lbtype(LABEL_04) &&! lbtype(LABEL_03)' -print

 e. merge from version

    print the file need merge

         clt findmerge . -fver LABLE_01 -print 

 

 

 

创建viewclt mkview -tag view_abcd /view_store/view_abcd.vws

 

设置view: clt setview view_abcd

编辑config specification: clt edcs

创建branch typeclt 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 chtype 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 ""
cleartool find -avobs -element "brtype("")" -nxn -print | xargs cleart
cleartool ls -s|grep ""

   

lsview -l 视图名称(可查询uuid)

unregister -view -uuid uuid

rmview -f -all -uuid uuid

rmtag -view 视图名称

 

Removing a View

To permanently remove a view (including its entries in the ClearCase registry and all

references to the view held by any VOBs), use the ClearCase Administration Console:

1 Navigate to the view storage node for the view. This is a subnode of the host node

for the host where the view storage directory resides.

2 Click Action > All Tasks > Remove View.

You can also use the cleartool rmview command.

If you have tried to remove a view by simply removing its storage directory, use the

following procedure to remove references to the view still held by VOBs:

1 Run the cleartool describe command, and note the view’s UUID from the list of

views referenced by a VOB:

cleartool describe –long vob:vob_tag

If the view tag still exists, you can use lsview –long to find the view UUID.

2 If the view tag still exists, remove it from the registry. In the ClearCase

Administration Console, you can use the View Tags node for the tag’s regions to

remove view tags. You can also use the following command:

cleartool rmtag –view view_tag

3 Unregister the view. In the ClearCase Administration Console, you can use the

View Object node to remove a view object. You can also execute the following

command, using the view’s UUID from Step 1:

cleartool unregister –view –uuid uuid

4 Remove references to this view from each VOB that holds them. In the ClearCase

Administration Console, you can use the Referenced Views subnode of a VOB

storage node to remove a view’s records from a VOB. You can also execute the

following command, using the view’s UUID from Step 1:

cleartool rmview –all –uuid uuid

After you have removed references to the view from all VOBs, remove the view storage

directory if any of it remains.

 

 

1. When you come to work, the first thing you need to do is: Create a View

 

ct mkview -tag <view_tag> <view_storage_path>

 

   example:   ct mkview -tag alex_test /net/nj2/ 

Other Command:

ct lsview                  list all the views reside in the hosts 

ct lsview | grep name      list specified view by name 

ct rmview -tag <view_tag>  remove an exist view 

2. After you create a vew, you need to Set the View to enter it. Then you are able to see the vob content only when you set the view.

ct setview <view_tag> 

Example: ct setview alex_test 

Other Commands
ct pwv                     see which view you are currently in 
exit                       quit from current view 

3. When you are in a view, you need to set the config spec correctly to pick up the right version of element.

ct catcs                   view your config spec 
ct edcs                    edit your config spec by vi editor 
Other Commands
ct catcs > filename        Copy your config spec to a file 

ct setcs filename          Set your config spec from a file 

 

For example:
element* CHECKEDOUT

element* .../ISGcq00123456/LASTEST

element* BLUETOOTH_00.07.00

element* AP_SIPC.01.32.00

element* AP_IB2.00.38_ARM

element* /main/LATEST

 

Command

element <file path> <version path> 

file path: hello.c, *, /vob/su_java/...

version path: Label or Branch

 

4. Now you may have a task to do. You have a CR assigned, and you know the baseline version.

Set config spec to the baseline version. 

Create branch type associated with the CR.

ct mkbrtype ISGcq00123456 

Make branch on the baseline version

ct mkbranch ISGcq00123456 hello.c@@/main/2 

   Result: hello.c@@/main/ISGcq00123456/0 is created and checked out(a copy of hello.c in the dir was created and you can edited it. If there is not hello.c in the dir, the clearcase would submit a error).

Add a rule to pick up this branch in the config spec, just below the CHECKEDOUT rule.

element* .../ISGcq00123456/LATEST 

Accessional:

Branch type shall have naming convention designed by every project. 

Don't want check out:

ct mkbranch -nco ISGcq00123456 hello.c@@/main/2 

 

Remove a branch from an element:

ct rmbranch hello.c@@/main/ISGcq00123456. 

 

Make sure no checked out version on this branch

 

Rename a branch name

ct rename brtype:old_name brtype:new_name 

It will apply to all the created branch.

Remove a branch type as well as all the related element branch

ct rmtype -rmall brtype:ISGcq00123456 

5. After making your CR branch on the file to be changed, check out the version if it hasn't been checked out(checkout后会产生一个自己的私有文件,你可以自己修改,别人看不到,只有这个文件被checkin后才会放到vobs).

ct co -nc hello.c@@/main/ISGcq00123456/0

    Then, you are able to edit this file. After you finish the change, check in the file to vob.

ct ci -nc hello.c

    The result is, the element will increase one version on the branch:

hello.c@@/main/ISGcq00123456/1

Accessional

A checked out version is only in your view. Other engineer can not see it. If you remove that view, you will lost the checked out version.

You can undo checkout by:

ct unco hello.c

If a checked version has no change, it can't be checked in. You will get an error message like "The file is identical"

An unreserved checked out will not block other people check out the same version. Normally, we just use reserved checkout.

You can only check out a file on the branch which has mastership role.

6. If your task is to create a new file, you need to do below steps:

Make branch on the directory that you will add the file to

ct mkbranch ISGcq00123456 /vob/su_jave/code/src 

The directory will be automatically checked out. Then make element in this dir.

ct mkelem -nco hello.c 

     Create a folder

ct mkelem -eltype directory test 

      Dont check it out, because you need to make the CR branch on this file.

ct mkbranch ISGcq00123456 hello.c 

Check in this directory. Otherwise, other people can not see your new file.

ct ci -nc /vob/su_java/code/src 

Accessional

We usually only check in the file, but forget to check in the directory. This will cause the file you created can't be stored in the VOB and can't be seen by other people. 

Go to the top project folder, use below command to list all checked out files and directories int the current dir and sub dir in your view. It will help you check in all elements.

ct lsco -cview -r 

 

7. Now, your task is ongoing. In coding and testing, you may need to merge your file to other version. below example gives the merge steps:

Example: Merge file from hello.c@@/main/branchfrom/5 to hello.c@@/main/branchto/2

ct co -nc hello.c@@/main/branchto/2 

ct merge -to hello.c hello.c@@/main/branchfrom/5 

  Usually you may also need to compare two versions

ct diff hello.c hello.c hello.c@@/main/branchfrom/5 hello.c@@/main/branchto/2 

Compare this version from the previous version

ct diff -pre hello.c@@/main/branchto/2 

 

Accessional

Use this command to list all versions of an element

ct lsvt hello.c 

     include the merge info

ct lsvt -merge hello.c 

     Remove a merge arrow:

ct rmmerge hello.c@@/main/branchfrom/5 hello.c@@/main/branchto/2 

     Dont do actual merge, just draw a merge line

ct merge -ndata hello.c@@/main/branchfrom/5 hello.c@@/main/branchto/2 

 

In what cases we need merge:

Integrate with the code developed by someone else. 

If baseline version has been incresed, need upermage. 

Merge for release.

8. If you want to remove an un-use version, use the command

ct rmver hello.c@@/main/branchto/2 

     Then the version 2 will be removed, but next time the version will increase from 1 to 3.

     If you want to remove a file, you can use remove name command:

ct rmname hello.c 

     Be sure to make branch and check out the current directory before rmove it, just like the steps of make element.

     If you want to rename a file, you can use

ct mv old_name new_name 

     If you want to create an element link, you can use

ct ln source_file file_link 

     (checkout current folder like above)

9. Now you may have completed the task of coding, testing, inspection, and prepare to release it. You need to check your developed version is complied with below rules:

Must make branch from the baseline version. 

Must have up merged your branch if the baseline version is not the LATEST version. 

All the files and directories have no checkou.

10. How to label the version

     Make the label type:

ct mklbtype BLUETOOTH_00.07.00 

     Make label on a version:

ct mklabel BLUETOOTH_00.07.00 hello.c@@/main/branchto/2 

     Move a label from the old version to a new version:

ct mklabel -replace BLUETOOTH_00.07.00 hello.c@@/main/branchto/3 

     Remove label on a version:

ct rmlabel BLUETOOTH_00.07.00 hello.c@@/main/branchto/3 

     Remove the label type

ct rmtype lbtype:BLUETOOTH_00.07.00 

11. How to search the reuqired version

     Find all files with the version(.../ISGcq00373766/LATEST) and with no label SAMBA_AP_DSL_BLUETOOTH_00.00.07:

ct find /vob/directory -version 'version(.../ISGcq00373766/LATEST)  && !version(SAMBA_AP_DSL_BLUETOOTH_00.00.07)' -print 

     Find all files with the version SAMBA_AP_DSL_BLUETOOTH_00.00.07, and then search STRING in all found files:

ct find .-version 'version(SAMBA_AP_DSL_BLUETOOTH_00.00.07)' -exec 'grep STRING $CLEARCASE_PN' 

 

  

错误地删除 clearcase view 后,不能再创建同名 view 的问题的解决

这是由于数据库中仍然保存了对相关 view 的引用。可使用 clearcase 的小工具 cleartool.exe 来彻底删除旧的 view.

1、cleartool lsview -long viewName

----记录得到的uuid
----形如:0a05ad0d.41024ac6.9a80.63:d8:3a:b4:14:c6
2、cleartool rmtag -view   viewName

3、cleartool rmview -force -all -uuid uuid的值

4、cleartool unregist -view -uuid uuid的值

分享到:
评论

相关推荐

    ClearCase使用手册.doc

    【标题】:ClearCase使用手册 【描述】:本文档是关于ClearCase的使用手册,涵盖了配置管理工具的基本介绍,特别是对ClearCase的详细介绍,包括其基本概念、特点以及环境准备等。 【标签】:clear case 【正文】...

    clearcase使用手册

    《ClearCase使用手册》 ClearCase是IBM推出的一款强大的版本控制系统,主要用于软件开发中的源代码管理。它提供了全面的版本控制、配置管理和变更管理功能,是IT行业中广泛使用的工具之一。ClearCase支持多种操作...

    ClearCase使用指南

    以下是对`ClearCase使用指南`的详细说明: 1. **创建视图** - **快照视图**:这种视图在本地创建一个文件的副本,类似于一次性快照。用户可以在离线状态下工作,并在准备好后进行更新。快照视图适用于对速度有要求...

    clearcase使用指南

    ### ClearCase 使用指南 #### 一、ClearCase简介与核心概念 **ClearCase**是由Rational Software Corporation(现为IBM Rational的一部分)开发的一款强大的配置管理工具。它与VSS、CVS等同类软件一样,在软件开发...

    ClearCase使用手册

    ClearCase的使用手册还会提供日常变更操作、版本同步、提交开发任务等方面的使用技巧。ClearCase的备份和恢复功能为数据提供了安全的保障,包括VOB备份、VIEW备份和注册项备份。同时,手册会介绍如何对VOB、View进行...

    ClearCase手册

    《Rational ClearCase使用指南》是一本全面介绍IBM Rational ClearCase这一版本控制系统的重要参考资料。ClearCase作为企业级软件配置管理工具,广泛应用于大型项目开发中,以实现代码版本控制、协同开发和变更管理...

    IBM clearcase使用指南

    IBM Rational ClearCase。 ClearCase是一种配置管理工具,是开发小组用来跟踪、管理软件开发过程各个工件的配置管理系统, ClearCase可以协助开发组织更好地管理软件开发进程。

    ClearCase 客户端使用指南 For windows base 方式

    本使用指南主要围绕ClearCase客户端在Windows操作系统下的安装、配置以及基本操作和集成等方面进行了详细阐述。 安装ClearCase客户端前需要了解的安装前提条件包括操作系统的要求,建议使用Windows 2000操作系统...

    CLEARCASE使用指南

    本指南旨在帮助开发人员了解ClearCase的基本概念、操作流程,以及与开发工作密切相关的配置管理策略,如分支和标签的应用。 ClearCase中的VOB是版本对象基础的缩写,它是存储软件项目所有版本化文件的数据库,包含...

    Rational.ClearCase.LT.使用指南

    《Rational ClearCase LT 使用指南》是一份针对IBM Rational ClearCase Light Tool(简称ClearCase LT)的详尽指导文档,旨在帮助初次接触或不熟悉该工具的用户掌握其基本操作和高级特性。ClearCase是一款强大的版本...

    IBM Rational ClearCase 部署指南

    随着时间的推移,可视化设计与软件配置管理(SCM)...本文适用于使用 Rational XDE/Java Platform Edition 和 Rational ClearCase 的软件开发人员。本文详细概述了 Rational XDE 与 Rational ClearCase 之间的集成。

    ClearCase/ClearQuest 用户手册

    在《ClearCase/ClearQuest使用手册》中,用户将学习如何设置和配置这两个工具,包括安装、初始化数据库、创建用户账户、设置权限等基础操作。此外,手册还将详细讲解如何使用ClearCase进行版本控制,如何创建和管理...

    ClearCase命令参考手册.pdf

    - **cleartool Subcommands**:介绍了cleartool命令的各种子命令,用于执行各种ClearCase操作。 - **Non-Command Reference Pages**:这部分涵盖了除命令之外的其他参考资料,如日期时间规范、对象选择器等。 - **...

    ClearCase安装指南

    《ClearCase安装指南》 IBM Rational ClearCase是一款强大的版本控制系统,用于管理软件开发过程中的源代码和其他文件。本文将详细阐述如何安装和配置ClearCase客户端。 一、客户端安装步骤 1. 首先,确保你有...

    clearcase操作

    《ClearCase操作详解》 ClearCase是一款强大的版本控制系统,由IBM公司开发,广泛应用于软件开发中的版本管理和配置管理。本文档旨在提供一个清晰的指南,详细介绍ClearCase在服务器端的部署以及客户端的使用操作...

    ClearCase命令参考手册上册

    《ClearCase命令参考手册上册》作为一本详尽的指南,旨在帮助用户更好地理解和掌握Rational ClearCase这一强大的配置管理和版本控制系统中的各种命令。该手册适用于使用ClearCase进行项目开发与管理的专业人员。 ##...

    Clearcase安装指南

    ### Clearcase安装指南 #### 一、概述 Clearcase是一款由IBM提供的强大的版本控制系统,它主要用于软件项目的源代码管理和版本控制。与常见的版本控制系统如SVN不同,Clearcase提供了更为复杂的特性,例如动态视图...

    clearcase命令手册

    `cleartool`是ClearCase的主要命令行工具,通过它,用户可以执行几乎所有的ClearCase操作,包括创建、查看、更新和管理版本库中的元素。这个命令集涵盖了从基本的版本浏览到复杂的分支策略和基线操作。 二、基础...

    clearcase UCM使用手册

    ### ClearCase UCM 使用手册关键知识点 #### 一、UCM概述 - **UCM (Unified Change Management)**:是IBM Rational ClearCase中的一个重要组件,旨在提供一种统一的变更管理流程,帮助开发团队有效地管理和跟踪软件...

Global site tag (gtag.js) - Google Analytics