UML软件工程组织

ClearCase的Web客户端使用指南
作者:崔秉正 信息来源:ITS解决方案中心, IBM

 

本文的主要目的是指导开发人员应用Web使用ClearCase,在本文中环境基于Windows系列操作系统。

1 目的
本文的主要目的是指导开发人员应用Web使用ClearCase,在本文中环境基于Windows系列操作系统。

2 WebServer的设置

2.1 WebServer的版本
ClearCase的Server端建议安装2003.06.13版本的Rational WebPlatform,如果Server已经安装了低版本的ClearCase,检查ClearCase安装目录下是否存在web目录,其下应有applets,bin,pages等目录,在bin中应有ccweb.exe,检查在Common目录下是否存在rwp目录,如果不存在建议安装在另外一台机器上安装ClearCaseServer,做为WebServer,如果没有资源则只能重新ClearCase 2003.06.13,在安装前要做好备份。

2.2 WebServer的配置
在新的Rational WebPlatform中安装完毕后会有以下目录Rational\Common\rwp;需要修改conf\rwp.conf,在其中查找Listen,将端口修改为不会产生冲突的端口号。

检查conf\include目录,是否存在ccweb.conf,如果没有可以copy一份后再修改,应包括以下内容:(需要注意,其中的目录要根据ClearCase的实际安装目录进行修改)



#
# This supports the /ccweb mapping to get to the CC Web login screen.
# You can also type /ccweb/bin/ccweb.exe to get there, but the
# DirectoryIndex gets us there automatically with just /ccweb.
# The Options -Indexes prevents directory browsing
#
ScriptAlias /ccweb/bin "C:/Rational/ClearCase/web/bin"
Alias /ccweb "C:/Rational/ClearCase/web"
<Location /ccweb>
DirectoryIndex bin/ccweb.exe
Options -Indexes
# Enabling Zlib server-reply compression for html, plain text and xml
# DO NOT do it for JScript: it crashes the sever
AddOutputFilterByType DEFLATE text/html text/plain text/xml 
</Location>

#
# We also support the /ccase and /ccase/bin/ccweb.exe mappings for back-compatibility.
#
ScriptAlias /ccase/bin "C:/Rational/ClearCase/web/bin"
Alias /ccase "C:/Rational/ClearCase/web"
<Location /ccase>
DirectoryIndex bin/ccweb.exe
Options -Indexes
</Location>

# This passes the LANG environment var to allow the ccweb CGI program 
# to correctly get the locale. 
# Commented out because this is not truly needed on Windows
# and if the LANG environment variable is not defined it causes
# an error to be written to the application log complaining that
# LANG is not defined (harmless, but clutters up the application log).
# PassEnv LANG


#
# Directives to disable paging support for the CCWeb browse page. If the
# DISABLE_BROWSE_PAGING environment variable is present, CCWeb will not
# use paging to display large directories.  (NOTE: This will take substantially
# longer for clients to generate their display when directories contain > 500 elements)
#
# SetEnv DISABLE_BROWSE_PAGING 1
#

2.3 Server的本地安全策略的设置
由于ClearCase的权限控制的要求,这时所有的View都设置在Web Server上,所以对本地安全策略要求允许用户在本地登录,选择管理工具中的本地安全策略,找到允许在本地登录项,添加用户:


3 Web客户端的使用

3.1 IE设置
建议客户端使用IE6.0 SP1以上版本,要求将WebServer站点设置为可信任站点或本地站点。

3.2 客户端的JRE的安装
由于ClearCase中应用了Applets,建议安装JRE1.4.0以上版本

3.3 登录
在IE地址栏中输入http://WebServer地址:端口号/ccweb,会出现登录界面


3.4 创建工作的View
在第一次使用ClearCase客户端时,会提示创建View,需要注意,应用ClearCase的Web客户端使用的View都是Snapshot View。另外会提示你是否信任Rational公司的程序,选择信任,否则无法继续,建议选择总是信任。

在页面上提示Will this view be used for working on one of the Projects described in the ClearCase project tree?

一般情况下建议选择OK,如果在里面找不到你所工作的Stream,建议由SCM处理或参见FAQ。


3.4.1 选择Porject_VOB

选择要工作的Project_VOB


3.4.2 选择Project

选择要工作的Project


3.4.3 建立View


在该页面有以下选择项:

Create a development view
建立开发View有两项选择项:Create a new development stream与Reuse an existing development stream,建议选择Reuse an existing development stream,如果没有已存在的Stream建议联系SCM
在View directory to create中输入要在本地保存Snapshot View的目录,注意要全路么,不能是相对路径
Create an integration view
在View directory to create中输入要保存Integration View的目录
需要注意一般情况下

Step 4 of 5: Specify text mode

选择是Interop (insert CR),建议修改为Transparent,因为如果选择Interop (insert CR)会缺省的将UNIX格式文本转换为Windows文本,这样在进行Merge时可能会出现问题。

选择Create Views
会建立View并转入到应用界面


3.5 选择要工作的View或删除View
如果不是第一次,会在登录后提示以下界面:


可以选择已有的View或选择Remove从本机删除View,如果View列表没有相应的View选择Create a new view or join a project,并选择OK

3.6 工作区概述
3.6.1 帮助与注销

在屏幕右上侧有帮助与注销及ClearCase相关文档与Rational网站链接


3.6.2 目录树

在屏幕左侧目录树可以选择View,VOB及目录



   Select View
  All VOBs
  \Frame_VOB
  Frame_Code
  

3.6.3 View工具栏

在屏幕上中部分有View的工具栏,包括Add to ClearCase,Update View,Find Modified Files,Edit View Config,Deliver from Stream与Rebase Stream几项,如果是集成流的View,则没有Deliver与Rebase两项


3.6.4 配置项工具栏

在View工具下方有配置项工具栏,包括Check Out,Check In,Undo Checkout,Undo Hijack,Compare,Merge,Properties及Hisroty几部分


3.6.5 配置项显示工作区

在屏幕右下侧显示配置项,包括名称,大小修改时间,版本等

3.6.6 返回View

在执行完操作后,不会自动返回View工作区,需要在屏幕右上侧点击Return To VOB View

3.6.7 配置项状态图示


3.7 View 操作
3.7.1 Add to Source Control

在配置项选择中没有纳入配置控制的文件与目录前会有图标: ,按下 View工具栏中的Add to ClearCase,或转到新页面,选择在当前目录以的所有的子目录中有哪些没有纳入配置管理,选择相应的项,后按Add Selected Items,在Web客户端中较好的一点是Add to ClearCase时不必考虑上一级子目录要Checkout,Web客户端会做这些事情。


这时弹出新的对话框,要求选择Activity


根据需要选择已有的或新建Activity后按OK,ClearCase会执行操作,之后会显示已经Add。


3.7.2 Update View

如果只是进行Check out修改等操作而不是要在网络段开后应用,建议不必选择UpdateView;选中要取到本地的目录文件,如


再选择工具工具栏中的Update View,转到Update界面,如果已经在本地存在,则选择Update,如果本地不存在,选择Load。


选择Perform the update operation


3.7.3 Find Modified Files

寻找在本地哪些文件已被修改


可以针对相应的文件执行不同的操作,与ClearCase普通客户端的Snapshot View相同

3.7.4 Edit View Config

建议一般用户不要使用此项,一般是在本地文件出现严重错误时使用,此时将load rule scopes中相应文件清除,sumit会执行清除操作


清除结果如下图:


3.7.5 Deliver

选择Deliver会转入以下页面,提示Rebase或是Deliver


如果有修改的文件会提示找到Modified Files,需要处理

要注意的是,如果要执行Deliver或Rebase,Web客户端要求,必须要有相应的Web View。

如果一切正常会转到Deliver Preview页面


首先选择要Deliver的Activity,然后确定是否要进行自动Merge或自行处理,并确定Deliver到哪个集成View


之后选择Start A New Deliver


如果选择的Acitvity有一些依赖的Activity,则会弹出以下页面,这时请SCM来处理


如果正常会出现以下页面:


如果在Merge过程中没有冲突,会弹出以下页面:(如果出现其他页面,说明出现Merge冲突,请SCM处理)


选择Complete Deliver完成此次提交,Web客户端会执行Check in操作,完成后提示


3.7.6 Rebase操作

一般情况下建议不要应用Web进行Rebase操作,如果要进行选择Preview the rebase before starting看是否有问题



3.8 配置项操作

没有选中配置项时,在配置项菜单全部是灰色,如下图:


如果有配置项被选中,则相应可操作的会改变颜色,如下图:


3.8.1 Checkout

按Checkout后会弹出Activity对话框,选择或新建Activity:

建议:

1. 在Checkout Comment中写上操作原因。
2. Activity要有意义的名称或按项目的要求


如果Checkout成功会出下以下对话页面:


3.8.2 Checkin

选择要Checkin的配置项,可以多选


与Checkout一样会弹出Activity对话框,注意在对话框中有一选择项:Check in even if identical to previous version,如果选中,则该配置没有修改可以Check in,否则会失败


3.8.3 Undo Checkout

选择要Undo Checkout的配置项,可以多选

会弹出以下对话框:


确认后,执行操作,如果正常,转到以下页面:


3.8.4 Undo Hijack

如果没有进行Checkout操作,在Windows资源管理器中或通过其他IDE等直接修改某文件后,该文件为Hijack状态,可以执行Undio Hijack操作,如果需要纳入配置管理,选择Checkout即可,操作见Checkout;如果要恢复,则选择Undo Hijack,也可以选择不做处理。

按Undo Hijcak后会弹出发下对话框:


一般情况建议不要保留keep文件。

如果正常转入以下页面:


3.8.5 Compare

选择Compare会弹出以下对话框:

一般情况下建议选择Compare with previous version,比较功能成功会弹出新页面:


可以利用这些按钮查找不同处:


如果想比较其他版本,可以请SCM来处理,以下是例子:



Compare功能也可以比较不同配置项的差别,但是要求在同一个View中,如下图:


3.8.6 Merge

本项功能是进行手动Merge,不建议选择。如果要进行建议请SCM处理。


3.8.7 Properties

选择Properties可以查看配置项的属性,只能选择一个配置项,不可多选。在Properties页面,可以转到History或执行Compare操作。


3.8.8 History

History可以查看配置项的历史,只能选择一个配置项,不能多选。


4 FAQ
4.1 登录时出现An error occurred while processing this request:登录失败: 未授予用户在此计算机上的请求登录类型。
该情况是由于在WebServer端,没有允许该用户可以本地登录引起的,将该用户加入即可

4.2 第一次使用时很慢,有时切到其他的时候回来会找不到焦点
这是因为会要求你信任Ratinoal公司的一些程序,注意应用Ctrl-TAB找到相应的而面,选择总是信任即可

4.3 如何不退出选择另一个View
在屏幕左侧有一个目录树,其中最上方是Select View,可以通过这个来选择另一个View。

4.4 在操作完成后,如何回到View操作区
在操作完成后注意屏幕右上侧会有Return To VOB View,点击后回到正常操作区。

4.5 在Update View时出现错误,不能Update
检查一下,有可能是本地文件被删除,这时进行Update页面不要选择Update,选择Load再Perform the update operation,应该可以成功,如果仍然失败,通知SCM

4.6 在Deliver时提示An error occurred while processing this request:There is no integration view registered with this web server for the current project. You will need to return to the"Create View" page and create an integration view for this project before proceeding with "Deliver".
用Web客户端Deliver需要也有一个Web的Integration View

4.7 在操作时出现以下对话框


基本原因是操作过快,页面Load尚未完成,待页面Load完成后再操作即可

4.8 地址输入正确,但是IE中是空白
检查IE选项中的安全选项,该站点是否加入可信任站点,可信任站点的安全等级是否允许执行Java Applet

4.9 Hijack文件是如何出现的
如果没有经过Checkout操作,直接修改文件,ClearCase在检查配置项状态时就会判断为Hijack文件

4.10 出现Hijack文件怎么办
可以根据需要选择不做处理、Checkout或Undo Hijakc处理,如果修改确定要给入配置管理选择Checkout,如果不需要纳入配置管理,但是需要在本地保留修改,则不做处理,如果修改不正确,要恢复,选择Undo Hijack

4.11 如果我想比较以前的版本如果处理
虽然提供以前版本的功能,但是要应用ClearCase的一些特殊表示方法,如果不清楚,可以请SCM帮助。还有一个方案,就是选择这个配置项的History,之后点击可以比较的版本处链接,拷贝Version中@@及之后的内容回到View页面;选择 Compare,将@@之后的内容拷贝入Version Two输入框,将Version One输入框的内容拷贝到@@之前,选择Compare other versionas

关于作者
崔秉正,IBM ITS解决方案中心
 

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