Clearcase UCM - 交叉交付与向上交付?

发布于 2024-08-09 05:52:35 字数 242 浏览 9 评论 0原文

我们在同一级别的层次结构中有两个 Clearcase UCM 流(即相同的父流)。如果两个子流都重新基于相同的父基线,这是否意味着

  • 将两个流的活动传递到父级(一个,然后另一个)

将相当于:

  • 将一个子流的活动传递到另一个子流,然后简单地将一个子流传递给父级

这实际上是真的吗?看起来应该是这样,假设所有交付的任何手动/用户选择的合并都是以相同的方式进行的。

We have two Clearcase UCM streams in a hierarchy at the same level (i.e. same parent stream). If the two child streams are both rebased to the same parent baseline, does that mean that

  • Delivering the activities of both streams up to the parent (one, then the other)

Would be equivalent to:

  • Delivering the activities of one child stream to the other child stream, and then simply delivering the one child stream to the parent

Is this in fact true? It seems it should be, assuming any manual/user selected merges for all deliveries are made in the same way.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

九命猫 2024-08-16 05:52:35

这是正确的,但首先需要提醒一下:

  • 拥有子流并不意味着必须从该子流传递到其父流。可以从一个流到任何其他流进行传递。
  • 横向合并如果两个流不兼容,可能会很危险基于相同的基础基线(在最终合并到父级时,冲突仍然存在,如以下所示 图解答案)。
  • 交付创建一个将所有当前活动链接在一起的时间线。这意味着如果您只将 a1、a2 和 a3 交付给 B,然后决定仅将 a4(而不是 a5)交付给任何其他流(B 除外),ClearCase 将强制您交付所有活动(a1 到 a5),甚至尽管它们在文件方面很可能完全不相关。
    如果您满足以下条件,则不会发生这种情况:

    • 仅交付给家长
    • 无论如何,始终交付所有当前活动!

在您的情况下,由于两个流具有相同的起点,因此在将 B 交付给父级之前,首先从 A 交付到 B,这是在进行最终交付之前解决 B 中任何合并冲突的一种方法(不会过早影响父级)合并。

This is correct, but first a few reminders:

  • having a sub-stream does not mean a deliver have to be done from that sub-stream to its parent. A deliver can be done from a stream to any other one.
  • sideway merges can be dangerous if the two streams are not based upon the same foundation baseline (conflicts will still be there when making the final merge to the parent, as seen in this illustrated answer).
  • a deliver creates a timeline linking all present activities together. That means if you only deliver a1, a2 and a3 to B, then decide to deliver a4 only (and not a5) to any other streams (other than B), ClearCase will force you to deliver all activities (a1 to a5), even though they very well be completely un-related in term of files.
    That does not happens if you:

    • only deliver to the parent
    • always deliver all the current activities anyway!

In your case, since both streams have the same starting points, making first a deliver from A to B, before delivering B to parent, is a way to solving any merge conflicts in B (without impacting too soon the parent) before making the final merge.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文