1

我有一个 ClearCase 触发器,它在checkin执行操作后运行脚本。
当用户签入新元素版本或将新元素添加到源代码管理时,它会起作用。

但是,当删除文件时,我不希望触发触发器(或者至少我不希望与其关联的脚本运行),但我知道它会因为删除元素后,文件夹不可避免地入住。

操作触发器是否可以以某种方式rmelem抑制checkin操作触发器?

4

2 回答 2

1

你可以这样做:

  • 定义一个 preop 触发器,在rmelem该触发器上设置一个标志(就像任何客户端都可以访问的某个地方写入的文件)
  • 修改您的 postop 触发器checkin,如果​​该文件存在,将删除它并且执行触发器的其余部分。

但我的观点是:据我所知,这些触发器是相互独立的,因此您需要提出一种外部协调机制,以便一个触发器影响另一个触发器。

您也可以使用环境变量(如果设置了某个 EV,则 postop trigger 取消设置它并且不执行自身),但我不确定您是否可以在不同触发器的不同执行中设置和持久化 EV。

于 2013-02-14T13:51:51.487 回答
-1

我不确定是否必须为所有元素类型运行触发器。

您可以使用环境变量 CLEARCASE_ELTYPE 在脚本中区分元素是目录还是文件元素。也许这有帮助?

另一点是 env var PPID - 精美的手册说:您可以使用 CLEARCASE_PPID 环境变量来帮助同步多个触发 ...##

于 2014-06-03T14:19:17.110 回答