如何防止多个组件上的 UCM 基线?

How to prevent UCM baselines on more than one component?

我们有一个包含大约 12 个组件的 VOB,我们只使用组件基线。
它们通常是使用 Windows 下的 GUI 创建的(UNIX 仅供部分开发人员使用,大多数人对 Windows 更熟悉)。

现在要创建组件基线,您必须在转到 'Baselines' 选项卡之前右键单击要在其中创建基线的流和 select 'Properties'并在那里创建新的组件基线。

问题是,如果您右键单击流,菜单中已经有一个名为“Make Baseline”的条目。不幸的是,有人点击此处的“Make Baseline”选项并为所有组件创建基线而不是仅为他想要的组件创建基线(不经常发生,但有时仍然会发生)。

我已经尝试了 mkbl 的一些预操作触发器,但据我所知,在 Windows 中使用 GUI 时它们不会被触发,并且它们无法阻止创建基线作为那时还不知道基线的名称。

有没有一种方法 - 无论是触发脚本还是其他 - 如果基线应该应用于多个组件或者我们是否只能接受这种情况并浪费我们的时间来防止创建基线 -人们需要时间才能发现某些组件上存在错误的基线,然后我们必须为错误的 'labeled' 个组件废弃基线?

Is there a way - be it a trigger script or whatever - to prevent the creation of a baseline if it's supposed to be applied to more than one component

据我所知,考虑到项目浏览器 (clearprojexp.exe) 直接管理用于创建基线的 GUI(它没有委托给 <Rational\ClearCase>/bin 中的 exe。

唯一(更复杂)的方法是 cron 作业检测创建的​​最新基线,如果同一所有者每隔几分钟创建一次基线,则(如果此后没有创建其他基线)删除他们(cleartool rmbl)并向基线所有者发送电子邮件。

您绝对可以编写用于基线创建的触发器!如果您的触发器没有触发,那么触发器定义或它运行的脚本有问题。

对于一个简单的测试,创建一个只执行的触发器:

clearprompt proceed -prompt "You're creating a trigger" -mask proceed

如果操作正确,每次创建触发器时都会出现一个对话框,其中包含 "You're creating a trigger" 作为消息。如果可行,那是您的脚本有问题;如果不是,则说明您创建触发器的方式有问题。