UML软件工程组织

ClearCase远程客户端软件在网络环境下的配置应用
慕容雪 , IBM Rational team 软件工程师
  2006 年 1 月 23 日IBM Rational 的ClearCase是软件配置领域的先导,它主要基于Windows和UNIX的开发环境。它提供了全面的配置管理──包括版本控制、工作空间管理、建立管理和过程控制,而且无须软件开发者改变他们现有的环境、工具和工作方式。由于分布式开发的需要和ClearCase安装和维护上的繁杂,对于客户来说,也许一个便捷方式来访问并使用ClearCase管理的资源更能满足他们的需要。ClearCase远程客户端软件就是这样一款安装在客户端,通过http协议来和服务器交互,实现对ClearCase资源管理的强大工具。通过本节介绍,你会了解CCRC的基本概念和工作原理。

1. 简介

 IBM Rational 的ClearCase是软件配置领域的先导,它主要基于Windows和UNIX的开发环境。它提供了全面的配置管理──包括版本控制、工作空间管理、建立管理和过程控制,而且无须软件开发者改变他们现有的环境、工具和工作方式。由于分布式开发的需要和ClearCase安装和维护上的繁杂,对于客户来说,也许一个便捷方式来访问并使用ClearCase管理的资源更能满足他们的需要。ClearCase远程客户端软件就是这样一款安装在客户端,通过http协议来和服务器交互,实现对ClearCase资源管理的强大工具。通过本节介绍,你会了解CCRC的基本概念和工作原理。

 1.1 CC远程客户端概念

 CC远程客户端软件 (ClearCase Remote Client), 简称CCRC,是IBM Rational 推出的用于在广域网环境下进行资源配置管理的产品,是一个基于Eclipse Rich Client技术开发的用户界面,为用户提供了一种通过ClearCase Web服务器访问与使用ClearCase 服务的便捷方式。安装CCRC客户端后,无论本机是否装有ClearCase, 都可以访问并修改ClearCase 管理的资源。CCRC包含了ClearCase客户端的大多数功能,还可以同IBM Rational ClearQuest进行集成使用。

 1.2. CCRC的基本工作原理

 CCRC几乎涵盖了所有ClearCase客户端的功能,适用于各种网络环境配置。CCRC实现了对远程ClearCase管理资源的访问和修改。在ClearCase中,Vob是存储和管理所有资源的工具,但是这些资源无法被直接获取和读懂,只能通过动态或静态视图来查看。CCRC也是通过视图来查看远程vob中的资源,只是这个视图是本地的,静态的。在客户端的表现就是一个以视图名称命名的目录。可以通过CCRC将远程相应Vob下的资源装入本地,还可以将修改后的CC资源提交回到ClearCase管理的资源中,完成对ClearCase管理资源的访问和修改。CCRC支持防火墙。在Linux平台上,CCRC需要开放防火墙的http协议端口。
CCRC的模拟工作环境如下图所示。

            返回首页

  2. CCRC的安装与卸载

 本节主要介绍CCRC的RCP和集成于IDE的两种形式客户端的安装和卸载。CCRC拥有独立的安装应用模式(RCP)和集成于Elicpse或RSA的插件模式。

 2.1 CCRC的独立的安装应用模式(RCP)

 独立的CCRC应用模式可以看作一个丛ClearCase服务器上下载的独立安装文件,像普通的软件那样在本地安装后就可以使用了。该独立应用模式支持Windows平台和Linux平台,可以照如下方法连接服务器并下载对应的安装软件:

 a) 通过http协议连接到clearcase服务器上,客户端在windows平台上可以用 IE浏览器; 在linux平台上可以采用mozilla或firefox浏览器。url地址模式为:http://<server ip>:port/ccrc/update. 下载页面如图2.1:


  图2.1

  b) 将相应平台的CCRC安装软件(Linux或Windows)下载到本地安装运行即可。安装完成后,在Windows平台桌面上会出现CCRC的快捷方式;Linux平台会在Start->My Program下找到CCRC的启动项,默认安装路径在/opt/IBM/ClearCase/CCRC下。启动CCRC RCP的界面如图2.2:ClearCase导航器里显示的是本地创建的静态视图,可以看出来,CCRC可以建立与多个CC Server的连接,还可以在同一个Server上创建多个基本视图或UCM视图。


  图2.2

  c) 卸载CCRC时,windows平台可以采用控制面板的安装/删除工具,linux 平台可以在/opt/IBM/ClearCase/CCRC/_uninst目录下运行./uninstall.bin命令。并且在卸载后手工删除客户端上创建的View目录及其下所有已装载的Vob内容。

 2.2 集成于eclipse的插件模式

 该安装模式除了提供CCRC RCP的所有功能,还可以使用集成于eclipse的扩展功能。对于集成模式的CCRC:

 a) 客户端首先要安装Eclipse软件,并安装GEF-ALL-3.1.1.zip插件。该插件可以在eclipse网站下载。这样可以省去以后安装其他客户端时大量时间连到Eclipse网站作在线更新。 b) 打开Eclipse, Help->Software Updates->Find and Install, 选择"新建远程站点"来输入ClearCaes server的ip地址,如图2.3所示。连接指定的cc 服务器,下载ccrc插件包。


  图2.3

  c) CCRC插件成功安装后的eclipse界面如图2.4所示。就是在原有Eclipse界面的基础上,多了一个ClearCase的菜单。在"窗口"下拉菜单里,多了"显示视图"一项,CCRC的五大视图菜单,在下一节会有详细介绍。和ccrc独立模式不同的是,集成于eclipse的插件模式可以和elipse工具交互。可以把elipse中的项目从工作区导出到clearcase管理的资源中,也可以从clearcase vob中将文件导入到eclipse的工作区中。还可以将eclipse project中的指定资源与ClearCase共享,这样,这些资源便可以被ClearCase控制了。


  图2.4

  d) CCRC IDE客户端的卸载和RCP形式的CCRC不同,集成于Eclipse的CCRC插件卸载是通过打开菜单"帮助-〉软件更新-〉管理配置",选择要卸载的CCRC版本,在右侧框架先选择"禁用",之后选择菜单栏"显示禁用属性",此时,ClearCase Remote Client项上一个红色环形标记表明该属性已被禁止,同时,在右侧栏中有"卸载"一项和"启用"一项。可以说,禁用是一个中间状态,从这里可以彻底卸掉CCRC插件,也可以重新起用CCRC。     回页首

   3 CCRC的五大视图工具

  CCRC通过五个主要视图工具实现对远程ClearCase资源的访问与使用。

  3.1 ClearCase导航器视图工具

  该视图工具在用户连接上远程ClearCase Web 服务器,通过点击 建立指向该服务器的本地的静态视图后,用于显示ClearCase服务器上所有有效Vob及其下控制的所有资源信息。客户端可以创建多个指向同一台ClearCase服务器的视图,也可以创建指向不同ClearCase服务器的视图,在没有删除这些视图之前,都可以在导航视图工具里找到他们。通过点击 来删除有效视图,如果要删除的视图所指向的服务器由于种种原因无法重新连接(web服务没有开启;卸载了CC,Server端删除了该视图的注册信息等),用 删除视图的操作会失败,为了达到从导航视图工具中最终删掉该视图的目的,可以手动的删掉该视图在客户端的本地目录并重新启动Eclipse或CCRC RCP。这时,被删除的视图将不再出现在视图列表中。

  该视图工具还提供了显示过滤功能。当用户连接上某一CC Web服务器时,可以选择性的装载某些Vob而不是所有Vob到客户端本地,这时,可以使用视图显示过滤功能把没有装载的Vob屏蔽掉,只显示加载到本地的Vob。同样的,也可以只显示没有装载的Vob或public vob。该功能可以使用户更自由的订制
规则来满足具体的项目需要。如图3.1:


   图3.1

   3.2 ClearCase详细信息视图工具

  在导航视图中,用户选择的项目的详细内容列表会在这个视图工具中显示。比如,用户选中的是一个ClearCase视图,那么通过该视图可见的所有Vob列表将显示在详细信息视图中;如果用户选择了某一视图下某个Vob,那么该Vob下的所有目录元素和文件元素将显示在该视图中。和导航视图不同的是,导航视图的树状结构最细粒度显示到目录级。所有的文件元素只能在详细信息视图中显示。另外,在客户端新加入的文件也可以在详细信息视图中显示出来,在没有加入ClearCase资源控制时,这些文件称为私有文件,只在客户端的详细信息视图中可见。私有文件的图标显示为 ;加入版本控制的元素图标显示为 ,该状态的元素在服务器端可见了。该视图对每一项元素或私有文件,都可以显示其名称,文件大小,类型,最近的修改时间,状态(是否加载),版本号和加载规则,并且可以根据这些特性为标准来为元素的显示进行排序。比如按照最近修改时间对元素进行降序排列。

  3.3 ClearCase视图配置工具

  该视图是CCRC中比较重要的一个工具。在资源装载等活动中都会用到。该视图有3 个tab页,分别表示装入规则,版本选择规则和装入结果。

  在最初打开ClearCase视图配置工具时,仅显示装入规则和版本选择规则。只有在客户端装载元素结束或用户在开发流上从集成流做rebase操作时,该装入结果tab页才会自动跳出显示新近变化的元素列表。

  装入规则中显示的是该视图已加载的Vob或Vob下的元素列表。该元素可以是文件,也可以是目录。指定了目录的装入规则会装入目录及其所有内容(文件和子目录),指定文件的装入规则仅装入指定的文件。有几种方法可以创建装入规则:a) 创建一组显式的装入规则,可以通过装入规则的编辑器 来添加新的元素列表。B)隐式创建;在装载Vob同时创建该vob的装入规则。对于ccrc客户端,服务器上的资源表现为三种不同状态:没有加载到本地的未装载资源;将整个vob全部加载的完全装载资源和仅选取vob下的个别资源进行加载的不完全装载资源。不同状态的资源可以从它的图标上加以区分:未装载的资源图标显示为;完全装载的资源图标显示为 ;不完全装载的图标 。加载成功后,可以在本地静态视图目录下发现服务器上相应vob的内容已经复制到了客户端本地目录下。这时,可以对该目录下的内容进行修改。

  版本选择规则显示的是该ClearCase静态视图的加载规则,可以通过编辑该视图装载规则来显示满足用户特别要求的元素。按钮用于选择某一视图来编辑加载规则;编辑加载规则的语法和clearcase中一致,这里就不赘述了,编辑完成后,点取应用按钮 ,完成视图版本选择规则更新。如图3.2


   图3.2

   3.4 ClearCase元数据视图工具

  在元数据视图中,首先可以显示或创建与任何一个CC服务器的连接并以树状结构显示出该服务器上的所有vob列表。如果包含有Pvob,还可以显示其具体项目,从属于该项目的集成流和所有开发流。选中一个vob可以显示该Vob中的分支类型(branch type)和标签类型(label type)目录。在ClearCase元数据详细信息视图中便显示出属于该vob的分支类型或标签类型列表。右键点击分支类型(branch type)或标签类型(label type)选取创建,可以在客户端创建新的分支类型或标签类型。

  生成分支类型和标签类型工具为用户提供了便捷的服务。用户可以订制所要生成的类型(全局类型或普通类型)。在有依赖关系存在的vob之间,创建与普通类型同名的全局类型的分支或标签是需要做进一步判断。在特殊情况下,用户可以强制生成该全局类型,并更改已存在的普通类型的属性为全局类型。这些功能都可以在ccrc客户端完成,通过元数据视图工具,完成对服务器上的资源实时修改,而无需作deliver的工作,从这点看,元数据视图有点clearcase的动态试图的特征。


   图3.3
   3.5 ClearCase元数据详细信息视图工具

  该视图与ClearCase元数据视图工具结合应用。显示相应的分支类型,标签类型,活动内容,如果在ClearCase元数据视图工具中选中的是项目,那么在详细信息视图中,还会显示该项目的集成流。在该集成流上,可以完成为该项目打基线和设置推荐基线的工作。  回页首
 
   4.创建视图访问ClearCase管理资源

  通过第三节,CCRC的各个视图的功能基本介绍完了,本节将通过一个例子,来阐述一下CCRC具体如何工作的,都以CCRC IDE为例。必要时会和ClearCase Explore做个比较。

  4.1 创建基本视图
   首先,通过CCRC创建的视图都是静态的。这是第一点与CC explore不同之处。打开CCRC IDE,点击按钮 ,调出"创建基本ClearCase视图"对话框。在Web 服务器URL一栏填入要连接的ClearCase服务器IP地址,在下边两栏填入登陆该服务器的用户名/密码。本次视图建立成功后,在下一次打开该对话框时,服务器信息和用户名/密码都被记录并成为默认输入,如果要更换登陆用户或更改登陆服务器,需要把"复用现有服务器连接"的复选框里的勾去掉。值得注意的一点,去掉了该复选框后,该项变成灰色,不能恢复上次的服务器登陆信息。所以,CCRC可以建立指向多个服务器的连接,只需在创建视图时指定不同服务器的IP地址即可,这是与ClearCase Explore的另一点不同。

  在输入了正确的登陆信息后,第二个页面会提示该视图创建的位置。如果客户端与服务器端分别是window和linux/unix系统,察看文本方式应选择"插入CR(I)"项,这是为了适用windows和unix系统不同编码方式。

  视图创建完成后,为了在客户端对ClearCase管理的资源进行访问和修改,需要把服务器上的存储资源下载到本地。装载规则在3。3中已经介绍,下图表示实现装载的一个过程:其他装载方法在3.3中已经做了阐述。



   图4.2

   装载成功后,会在本地视图目录下看到 标志的被完全装载的资源。现在,用户可以对这些资源进行修改,比如添加私有文件-〉加入资源控制。在添加私有文件上,CCRC与CC explore略有不同,CCRC通过在ClearCase导航器视图中右键点击所要添加的Vob或某个目录元素,选择"新建-〉文件/文件夹"来添加私有文件,也可以在客户端上,静态视图的存储目录下添加文件并刷新视图;CC explore的实现是在显示详细元素信息的视图空白处右键单击来选择创建文件/文件夹。如下图所示:


   图4.3

    4.2 创建UCM视图

  CCRC作为一个强大的集成了大部分CC客户端功能的另一方面表现,就是可以方便的创建UCM视图。

  首先,需要在服务器端创建项目vob, 组件vob和从属于该项目vob的UCM Project。这些是在CCRC客户端和CC explorer上都无法完成的。在CCRC的工具栏选择 按钮,表示连接UCM项目。和创建普通视图一样,首先指定要连接的服务器IP地址,登上服务器后,会显示该服务器上所有的Pvob和其下的Project。如下图所示:



    图4.4

    对于服务器端新创建的Pvob或是在现有Pvob下新建一个project,在选择了"显示所有项目VOB"复选框后,该项目如果不能被显示出来。此时需要断开与服务器的连接并重新登陆即可。选定一个要连接的项目,选择下一步,进入创建开发流提示窗口。



   图4.5

  默认的开发流名称会以登陆ccrc的用户名开头,本例中是以Administrator用户登陆的。下划线后跟项目名称。如果希望复用已有的开发流,去掉复选框选项"创建新的开发流"并选择"复用流"按钮,会列出所有已存在开发流列表。这里选择创建新的开发流并选择下一步。

进入创建开发视图提示窗口。



   图4.6
   接下来创建集成视图:



   图4.7

   同样地,去掉复选框"创建ClearCase UCM集成视图"选项,也可以复用已有的集成视图。最后,新创建的开发视图和集成视图会显示在ClearCase导航器视图中并显示为已连接状态。                                   回页首

   5 结束语

  CCRC能实现大部分的cc客户端的功能,而用户无需在本地安装cc产品就可以实现对 clearcase管理资源的访问与修改。CCRC还可以和CQ集成,利用CQ来管理活动;面向用户的使用向导可以简洁而清楚的展示CCRC的使用流程;面向元素的版本树的显示与应用等等强大功能。本文描述了CCRC软件的安装,卸载以及基本功能和应用,更详细与高级的应用还有待进一步介绍。              回页首

参考文献

1. CCRC帮助文档

  关于作者

慕容雪:IBM中国软件开发实验室,Rational team,软件工程师murongx@cn.ibm.com。


版权所有:UML软件工程组织