为持续集成提供更快的ClearCase视图标签

时间:2012-03-27 16:21:57

标签: continuous-integration clearcase

我一直在优化我们的持续集成构建,剩下的瓶颈似乎是以下ClearCase命令:

cleartool.exe mklbtype -nc -ordinary BUILD_ApplicationWorkspace_1.0.0.0@vob_example

对于包含1800个文件的视图,这需要6分钟才能完成。我们的MSBuild任务占用了一半。我猜测瓶颈的主要部分是网络带宽,还有我们如何标记此版本中使用的文件。

坚持这一点,我有疑问:

  1. 我们是否有效地标记了源代码文件,还是我们可以运行更有效的命令?
  2. 如何获得更好的指标来了解ClearCase命令花费大部分时间的位置?
  3. 先前的标签是否会使ClearCase标签减慢?
  4. 相关,ClearCase有什么类似于Git子模块或svn:externals?目前,我们在构建之前创建了包括依赖项在内的所有内容的视图。
  5. 感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

cleartool mklbtype不应该花那么长时间:它是关于创建标签的类型,而不是将其应用于您的每个文件。
如果有的话,mklabel需要时间。

应用UCM方法(而不是当前的“Base ClearCase”用法)可能有助于:

  • 它迫使你定义“组件”(连贯的文件组,即不是“1800文件”,这是非常大的)
  • 它提出了“incremental baseline”,它只标记了已更改的内容。
  • UCM组件有点类似于git子模块(您可以将它们分组到composite baseline),但这与svn:externalmentioned here和“{{}不同{3}}”。

但是如果你被Base ClearCase困住了,你就会被标记为所有,而优化的一个地方就是只标记这些文件的一部分。