ClearCase UCM 主线配置管理模式问题

发布于 2024-09-03 21:40:39 字数 930 浏览 14 评论 0原文

配置管理模式问题(使用 Rational ClearCase UCM)

当我使用主线方法时,我通过以下方式创建新版本:

  • 从主线创建版本 1
  • 在某个时刻
  • 从主线创建版本 2
  • 基线版本 1,将版本 1 交付到主线在某个时刻 基线版本 2,将版本 2 交付到主线,
  • 从主线创建版本 3
  • 等...

效果非常好,因为路径名是 /main/release 3/latest 而不是 /main/release 1/版本 2/版本 3/最新 等...

但是...当版本 1 中的新元素必须传播到更高版本时,我无法使用主线,因为主线已经在版本 4 上。

我唯一能做的就是从版本 1 直接交付/合并到版本 2。
不好的是,该文件(可能还有以后的版本)的路径名变成了 /main/release 1/release 2/latest 。我认为这不符合主线做法。

我做错了什么?

交叉发布于:http://www.cmcrossroads.com /forums?func=view&catid=31&id=99369#99369 交叉发布于:https://www.ibm.com/developerworks/forums /thread.jspa?threadID=330226

A configuration management pattern question (using Rational ClearCase UCM)

When I use the mainline approach I create new releases by:

  • create release 1 from mainline
  • on a certain moment baseline release 1, deliver release 1 to mainline
  • create release 2 from mainline
  • on a certain moment baseline release 2, deliver release 2 to mainline
  • create release 3 from mainline
  • etc...

Works very nice because the pathname is /main/release 3/latest instead of /main/release 1/release 2/release 3/latest etc...

However... when in release 1 are new elements that have to be propagated to later releases I can not use the mainline since the mainline is already on e.g. release 4.

The only thing I can do is deliver/merge from release 1 directly to release 2.
The bad thing is that the pathname then becomes /main/release 1/release 2/latest for that files (and possibly later releases). That is I think not in line with the mainline approach.

What am I doing wrong?

crossposted on: http://www.cmcrossroads.com/forums?func=view&catid=31&id=99369#99369
crossposted on: https://www.ibm.com/developerworks/forums/thread.jspa?threadID=330226

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

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

发布评论

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

评论(1

孤君无依 2024-09-10 21:40:39

这被称为级联分支症状。

不过,在您的情况下,每当有“必须传播到更高版本的新元素”时,您应该能够将它们直接从版本 1 传递到版本 2,级联限制为两级深度。

如果这是不可接受的,您需要设置您的流,以便在主线和版本之上有一个“全局流”:

mainStream
  mainline
  release1
  release2
  ...

您可以使用 mainStream 作为传播更改的源:
在 mainStream 上clearfsimport release2,导入/传递要传播的几个release1文件,(再次)创建“release2”基线,并在release2流上重新设置它的基础。

  • 不利的一面是,您需要为每个版本重复该过程。
  • 至少从好的方面来说,每个clearfsimport(在mainStream上)都“足够快”,因为发布之间的增量并不是太重要。

This is known as the cascading branching symptom.

In your case, though, whenever there are "new elements that have to be propagated to later releases", you should be able to deliver them directly from release1 to release2 with a cascade limited to two-levels depth.

If that is not acceptable, you need to setup your streams in order to have a "global stream" above mainline and above the releases:

mainStream
  mainline
  release1
  release2
  ...

You can use mainStream as the source from which you propagate changes:
clearfsimport release2 on mainStream, import/deliver the few release1 files to be propagated, make (again) a "release2" baseline, and rebase it on the release2 stream.

  • on the minus side, you need to repeat the process for each release.
  • on the plus side, at least, each clearfsimport (on mainStream) is "quick enough" because the delta between release is not too important.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文