1

哪一个更好?UCM 还是基础 ClearCase?

对于并行开发,我们需要UCM吗?在基本 ClearCase 上使用手动分支是否容易出错?

串行开发没有意义吗?在同一个分支工作?

4

2 回答 2

2

一个并不比另一个更好,UCM 代表了一组不同的最佳实践,您可以选择在基本 ClearCase 之上应用它们。

UCM 擅长定义一组连贯的文件(UCM“组件”),它们将是:

  • 分支在同一个分支
  • 将(“基线”)标记为全部(所有文件都收到一个不可变的标签)
  • 其他流引用(基线列表)

并行开发可以从 UCM 中受益,因为您可以提前设置流,以便定义合并工作流程。您不会强加任何东西,但是如果您完成了对子流的开发工作,那么自然要做的合并就是“交付”到父流。(与基本 ClearCase 不同,分支没有“分层组织”:一旦你在一个分支中完成了一项任务,你就可以将你的工作合并到任何其他分支:没有什么可以提醒你什么可能是一个自然的候选分支为您的合并)。

但另一个优点是配置的定义,即为了“工作”(编译、或开发新功能、或部署、或重构,或......)您需要获得的基线(标签)的确切列表.
根据您必须处理的组件数量,您将采用:

  • 系统方法:每个组件都是可修改的
  • 组件方法:一个组件可修改,其他组件不可修改:您仅在一组文件中开发,并在修复标签处使用其他文件进行编译。
于 2010-12-16T19:54:43.757 回答
2

我可以补充...

这实际上取决于从事同一项目的开发团队的规模和复杂性。例如,我们有一个由来自世界各地的 100 名开发人员组成的大型开发团队,这个团队真正受益于 UCM 提供的所有功能(正如上面 VonC 大师所提到的)。

另一方面,我组织中的大多数团队都在 10 人左右,而且他们都在同一个位置,这些团队真的不想在交付和合并上乱七八糟,所以他们选择简单地使用具有基本分支策略的基础 CC,例如一个集成/发布分支​​,然后是每个发布的每个开发分支,或个人开发分支。对于较小的团队,我们通常建议他们使用基本 CC,因为它更易于管理。

希望这可以帮助。

于 2010-12-17T03:49:03.017 回答