是否可以在使用 CCRC 插件进行 Eclipse 时使用 Ant 脚本来签入/签出源代码元素?我收到一条错误消息,指出脚本试图签出的元素不是 VOB 的一部分,但它当然在那里,我可以手动签出。
2 回答
应该可以将那些Ant ClearCase 任务与 CCRC 视图(与快照视图类似的“网络视图”)一起使用
像这样的脚本应该可以工作:
<project name="Testing ClearCase " default="CC" basedir=".">
<target name="CC">
<property name="FileSrc" value="MyView/MyVob/MyDir"/>
<property name="dist" value="dist"/>
<cccheckout viewpath="${FileSrc}/myFile"
reserved="false"
nowarn="true"
comment="Auto Build from script"
failonerr="false" />
<copy file="${dist}/myFile" tofile="${FileSrc}/myFile"/>
<cccheckin viewpath="${FileSrc}/myFile"
comment="Checked in by myFile.xml ANT script"
nowarn="false"
failonerr="false"
identical="true"/>
</target>
</project>
但是您需要确保您的当前目录(在此脚本中)就在您更新 Web CCRC 视图“myView”的上方。
我知道的唯一问题是:
- 如果CCRC 尝试签出复制的Vob的文件。
- 如果要签入的文件的父目录从另一个视图重命名
VonC 的答案中的 Ant ClearCase 任务使用cleartool
命令(getClearToolCommand()
in org.apache.tools.ant.taskdefs.optional.clearcase.ClearCase.java
)。当我调用cleartool
操作时,即使是从 CCRC 视图内部或上方,我也会从问题中收到错误消息。
现在(自 VonC 的回答以来已经过去了几年)有一个可以替代使用的 CCRC CLI(http://www-01.ibm.com/support/docview.wss?uid=swg24021929,将 CCSHARED 设置为您的顶级\eclipse 目录)。这些命令与 提供的命令相似cleartool
,但由于它似乎不支持 UCM 来解决您的签出问题,因此我首先必须使用 CCRC eclipse 插件在流上设置一个活动。
要让 CCRC CLI 与 ant ClearCase 任务一起工作,需要将任务更改为:
- 调用
rcleartool
而不是cleartool
. - 由于
cleartool
指向 .exe 并且rcleartool
是加载 jar 的 bat,除非您将 jar 转换为 exe,否则ProcessBuilder
将无法处理新命令(我使用rcleartool.bat
and测试过)。cmd \c rcleartool.bat