2013-01-25 44 views

回答

3

快照将拍摄Stream上最新更改集的快照。

正如在“difference between snapshot and baseline”中提到:

您可以快照无论是工作区或流的状态,无论你喜欢。
这将在需要时自动创建基线,即当基线中当前未捕获该工作空间/流中组件的当前配置时。

当您在工作空间组件上创建基线时,它将该工作空间当前由该组件选择的源版本进行基准化。

创建完成后,您可以在任何需要的地方使用快照或基线(即,它不以任何方式“捆绑”到创建它的工作区或流)。

确实,从工作区到流的“传递”操作也会导致该工作区中的基线显示在流的基线历史记录中。

一些人认为,由于工作区和流中的基准历史发散时可能发生的混淆,“提交”操作应该只提供变更集而不提供基线。
(特别是,我宁愿你只是在你想要的时候在流中显式创建基线)。
这种方法的一个优点是快照和基线具有一致的语义(目前,基线受传递操作影响,但快照不受影响)。

+0

“当该工作空间/流中组件的当前配置当前未在基准中捕获”时,如果基线内有变化,那么它是不是被捕获? –

+1

@ user470184基线始终有变更集。已交付但未纳入基准的变更集是非捕获变更集。 – VonC

0

我想我知道这个答案。将更改集传递到创建新基线的流中的组件。所以当我创建一个新的快照时,它为这个组件创建了一个新的基线,因为它包含了一个新的变更集,因此它与原始基线不同。

0

在我们的案例中,每个基准线都会创建并使用一次。几年后,许多开发人员使用Jenkins构建dev/int/prod变体并进行单元测试,我们有几十万个基线,除了生成一张快照之外,其他基准线都没有用过。从来没有再看过,从不提供任何进一步的价值,只有咀嚼terabytes的磁盘空间。

正确的答案是使用不同的SCM工具,但管理不是技术性的,Rational的销售人员销售了一款不太符合我们开发需求的优秀产品。每次从一个流中创建没有新基线的快照将会更好地满足我们的需求。

相关问题