【问题标题】:Keep same component in different streams in-sync in Rational Team Concert在 Rational Team Concert 中保持不同流中的相同组件同步
【发布时间】:2023-03-06 10:56:02
【问题描述】:
我们有一个客户端/服务器项目,其中包含三个组件:
客户端和服务器均引用 BaseLibrary。因此我创建了两个流:
- Server Stream 包括组件 Server 和 BaseLibrary
- Client Stream 包括组件 Client 和 BaseLibrary
现在,如果我在一个流中对 BaseLibrary 进行更改,则它们不会出现在另一个流中。有没有办法使用 RTC 2 使组件在不同的流上保持同步?
我也尝试为每个其他流设置流量目标,但这似乎没有帮助。
【问题讨论】:
标签:
version-control
synchronization
rational-team-concert
ibm-rational
【解决方案1】:
Streams 之间的流目标只是在这里帮助您可视化交付/接受流应该发生的位置:它是一个可视化工具,您可以在创建“流程图”时使用它。
在 3.0.1 中,你其实可以show pending changes from one Stream to another。
现在您可以设置构建定义和 use the post-build Deliver 以便从一个流自动传送到另一个流:
在这种情况下,“TeamA”仍然使用相同的触发策略(以确保他们交付的任何东西都经过验证),但是现在他们只将他们的单个组件交付给“集成流”。在这种情况下,没有“绿色”流,发布工程师不再需要对集成流进行更改,因为它现在是自动化的。
还请注意,上图中“Add components to deliver if they do not exist in the deliver target”和“Remove components from the deliver target if they do not exist in the build workspace”这两个复选框未被选中。
建议不要通过某种自动化机制将组件添加/删除传播到集成流。团队最不希望看到的是将所有其他组件从集成流中移除,因为有人不小心修改了他们团队的流。
在这些情况下,组件的添加或删除应由发布工程师手动完成。
例如,如果团队需要一个新组件,他们应该首先将其添加到他们的流中,然后将其交付到集成流中。然后,他们将修改“Post-build Deliver”选项卡中的“Components to deliver”选项,以包含此新组件并在之后自动交付