7.5. Label

7.5.1. View Label
7.5.2. Build label
7.5.3. Promotion state
7.5.4. Revision label

STARTEAM的标签(LABEL)主要用来记录事件,如里程碑,和代码分支没有 必然的联系;而 CVS 的分支必须依靠 TAG 来完成。

CVS 的TAG是记录在文件中,建立 tag ,耗时;Starteam 的 LABEL是建立在 数据库基础上的,建立 label,属于毫秒及的动作。

Starteam 地 LABEL 是建立在视图中,文件和视图脱离关系,该文件上的 label 失去。

如何使用LABEL管理项目的示例,参见: http://www.fox.se/english/starteam/best_practices/starteam_best_practices.htm ,提供了STARTEAM利用LABEL协同工作的范例,这些工作有些是CVS很难做到的。

下面具体介绍 label 的几个不同的变种: View Label, Build Label, Promotion State, Revision Label。

7.5.1. View Label

  • View Label 针对一个View中所有文件,可以用来记录项目的里程碑。

  • View Label非常灵活,可以将后来新增加的文件加入到View Label中。

  • 文件移到到其他视图和文件删除对view label 有不同影响:移出文件的 View Label会自动去掉,并且历史视图,该文件也不存在了,因为文件被移动了。 删除的文件则不然,仍可以通过历史被访问到,并且删除前的文件仍然具有该 View Label

7.5.2. Build label

  • 在创建View Label中有"Use as Build Label"的选项,默认创建的View Label 就是Build Label。

  • Build Label基本上等同于View Label,除了Build Label 在Change Request的 工作流程中会被引用到。Build Label可以用来帮助测试人员了解Bug在哪一个 Build Label中被解决了。

7.5.3. Promotion state

  • Promotion State 可以看作是是浮动的View Label, View Label 的标签;

  • 通常要建立的 Promotion State 有: Release, Beta Test, Alpha Test, ...。 并且要按照顺序建立,这样可以通过提升,将 Beta Test 对应的 Build Label, 提升为 Release,即用 Release 来指向 Beta Test 的Label。

  • 建立在View Label基础之上,为编译 Checkout 代码,提供一个一致的Label。 可以方便地建立 Nightly Build 系统。

7.5.4. Revision label

  • Revision label可以用来对一个视图中单独的文件或某些文件 (或元素如change request),单独建立label。便于文件查找。

  • 同View Label一样,文件如果被移动到该视图之外,失去Revision Label。