我每隔10分钟轮询一次ClearCase流。检测到更改时,我的作业执行build.xml。
问题是我的工作为同一个流贡献了一个工件,因此每个作业执行都会导致流更新,从而导致10分钟后执行另一个作业。
我的构建作业使用工件向ClearCase提供的事实现在无法更改。
答案 0 :(得分:0)
有没有办法在轮询期间忽略对特定文件的更改?
我不知道:polling will do a cleartool lshistory
检测到更改后,我的作业将执行
build.xml
有没有办法读取轮询结果,了解只更新了特定文件并且可以终止构建作业?
一种方法是修改作业,以便在正确的组件(应该忽略其更改的组件)上执行lshistory
并检查该文件是否是唯一返回的文件。
cleartool.exe lshistory -r -since 16-may.01:56:17 -fmt "%Nd %u %e %En %Vn %o\n%c\n" -branch aStreamName -nco aVob\aComponentRootDir
答案 1 :(得分:0)
如果您正在使用UCM流,并且这是一个集成流,您可以将“轮询”更改为仅在有人提供代码时触发。
这也减少了ClearCase VOB数据库的负担,因为lshistory有些昂贵。