PureCM是一款灵活的多平台软件配置和版本控制工具,它集成了缺陷跟踪功能,旨在补充而非强制开发者使用特定的开发流程。PureCM支持免费下载,并允许2个用户免费使用。在安装服务器时,可以选择安装示例数据,这有助于快速评估产品。
在早期的源代码管理工具(如SourceSafe、RCS等)中,它们的工作方式与(或大多数其他人)的工作方式并不相符,这常常让人感到沮丧。PureCM引入了一个重要的概念——“流”。这代表了一种特定的“开发线”,例如,构成产品版本1.1的所有更改。这允许在组织源代码和开发团队方面拥有更大的灵活性。
Steve Berczuk和Brad Appleton的《SCM模式》一书以及“流式线”网站是了解这一概念如何应用于最好参考。在做出SCM购买决策之前,无论是购买这本书还是阅读该网站,都值得花时间。PureCM旨在补充而非指导工作方式。
PureCM在自己的开发过程中得到了演变。通常为当前和即将到来的季度发布维护两到三个活跃的开发流。这些流定义了父-子关系(例如,2007/2开发流是2007/1开发流的“子”),这使能够轻松使用但功能强大的合并功能。
当产品发布时,通过创建一个发布流来对开发流进行快照。这将是该发布源代码的冻结副本。由于再次维护了父-子关系,因此使用合并功能进行错误修复变得简单。
还广泛使用问题(例如变更和缺陷跟踪等),并要求开发者针对问题提交所有代码,详细说明提交的原因,这有助于可追溯性。另一个要求的关键功能是能够审查并批准/拒绝对某些代码行/流的更改。这使能够将代码审查作为日常流程的一部分,从而提高质量。
假设已经发布了产品的“版本1”,并且正在忙于开发“版本2”。一个客户报告了“版本1”中的一个关键错误,需要立即修复。
一个开发者在“Development/Version1”流中修复了问题,并创建了新的“Release/Version1.2”流,然后将其发布给客户。另一个开发者然后可以通过点击一个按钮将错误修复合并(或应用)到“Development/Version2”流中。
如果“版本2”中需要更改的文件没有被修改,那么用户可以简单地选择提交的更改集并进行“快速合并”到“Version2”流。
如果“版本2”中的文件已经被更改,那么开发者将需要将更改集合并到工作区,并使用解决工具解决任何冲突。
PureCM拥有灵活的报告系统,用户可以使用XSLT编写自定义报告。还提供了用于常见查询的默认报告。
PureCM最常使用的报告之一是“发布说明”报告。该报告将列出在一个流中提交但在另一个流中未提交的所有更改集。因此,如果在“版本2”中提交了一个更改并合并到“版本1”,那么该更改将不会出现。
此外,在查看更改集对话框中的更改集时,可以看到更改已被合并到哪些流中,以及更改是从哪个流合并过来的。
PureCM中的问题跟踪功能类似于其他产品中的缺陷跟踪。一个关键区别是,在PureCM中,它是完全集成的,并且可以完全自定义可以输入的字段以及动作/状态/工作流。