我想问一下ClearCase中的派生对象是什么,以及它是如何工作的。
另外我想问一下是否有其他程序具有相同的功能,因为在Git,MKS或IBM®RationalTeam Concert™中我找不到类似的东西,它是否过时了?
答案 0 :(得分:2)
这与动态视图密切相关,动态视图非常特定于ClearCase,而在其他更新的VCS中找不到。
开发人员在视图中执行构建以及与ClearCase相关的所有其他工作。通常,开发人员在独立的私有视图中工作。有时,团队共享一个视图(例如,在软件集成期间)。
如开发软件中所述,每个视图都提供了一个完整的环境,用于构建软件,包括源版本的特定配置和可以修改源文件的私有工作区,并使用构建工具创建对象模块,可执行文件,等等。
作为构建环境,每个视图都与其他视图部分隔离。在一个视图中构建软件永远不会干扰另一个视图中的工作,甚至同时构建同一个程序。但是,在动态视图中工作时,您可以检查先前在另一个动态视图中完成的工作并从中受益。在适当的情况下,新构建共享由先前构建创建的文件。此共享可节省构建复制现有对象所需的时间和磁盘空间。
您可以(但不一定)确定所有动态视图中目录中发生的其他构建。 ClearCase包含用于列出和比较过去构建的工具。
这个方案的关键是项目团队的VOB构成了一个全局可访问的存储库,用于构建创建的文件,就像它们为进入构建的源文件提供存储库一样。
由软件构建生成的文件是派生对象(DO)。与每个派生对象相关联的是配置记录(CR),clearmake
或omake
在后续构建期间使用它来确定DO是否可以重用或共享。
派生对象(DO)是在使用clearmake或omake进行构建或构建审核期间在VOB中创建的文件。
每个DO都有一个相关的配置记录(CR),这是DO的物料清单。 CR记录构建环境的各个方面,DO的组装过程以及DO创建中涉及的所有文件。构建工具尝试避免重建派生对象。
- 如果视图中存在适当的派生对象,则clearmake或omake会重用该DO。
- 如果视图中没有合适的DO,则clearmake或omake会查找在另一个视图中构建的现有DO,该视图可以winked进入当前视图。
搜索过程称为购物。
这适用于非常大的基于C或C ++ makefile的项目。
答案 1 :(得分:1)
我认为TL; DR版本是:
派生对象包含描述
的信息对于clearmake和omake,此信息用于避免重建,可能加速构建。查询被称为DO“购物”,构建避免是“winkin”。
如果您具有监管或安全合规性或需要此级别的审核至关重要,那么实际上没有任何其他方法可以做到这一点。