It's all about the answers!

Ask a question

How to update an RTC component from a Stream without removing the Component from the Stream?


John m (112) | asked Dec 08 '16, 10:08 a.m.
Hi, I am still trying to get the grasp around RTC and the Component and Stream structure and I would like some help.

So I have a Component "HelloComp" created and as I understand it, I need to create a stream to work on it and subsequently a workspace repository linking the stream on my local machine to make any changes. I understand that whatever changes i make gets updated to the stream's component version which makes sense. However, the main Component's baseline doesnt change. 

Ex:
Main HelloComp is V1, I create stream linking V1. I make several changes and the stream has V6 but HelloComp is still V1. 

I notice that if i were to remove the component from the stream it seems to update itself back to the main HelloComp with all the changes, which again makes sense. However, is there a way to do this without removing the component from the stream and also, is there a way to "link" all updates from the stream to the main component? What I am saying is every time the HelloComp is updated in the Stream the main HelloComp also gets updated. 

Thanks and I hope i am not too confusing!

2 answers



permanent link
Ralph Schoon (63.5k33646) | answered Dec 10 '16, 8:55 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
https://jazz.net/library/#sort=pubDate&tag=scm shows various articles about the RTC SCM system.
I would start with https://jazz.net/library/article/539 .

https://jazz.net/wiki/bin/view/Deployment/RTCProcessFundamentals is also a good starting point and provides additional links for further reading per topic.

You can basically use baselines to do what you want.

permanent link
Geoffrey Clemm (30.1k33035) | answered Dec 09 '16, 10:21 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
A component does not have a "state" or a "version".   A component is just a place where a set of change sets are stored.   In particular, there is no "main" stream for a component ... there are just a set of co-equal streams.   You can create a stream named "main", but that will just be another stream like any other stream.   In order to make changes to the "main" stream, you would have to deliver change sets to it.

Comments
John m commented Dec 11 '16, 11:37 a.m.

 I did read about streams and i understand the concept up until the Component level. I understand that if i create a stream from the component i can work on my personal location and whatever changes i make is updated at the stream level. 


I am still not sure how the stream's changeset gets updated into the Component though. It seems if i remove the component from the stream the component i referenced will have all the updates from that stream. Is there a way i can update my stream which automatically update the component? 

I guess what i am saying is:
Component has Baseline 1

MyStream refers to baseline 1, i develop code and update MyStream.
Bob created BobStream but see only Baseline1 from Component - how can he see MyStream changes? It seems he can only see them if i remove the Component from MYStream then the changes show up? 

Maybe i am missing something here.. thanks!


Geoffrey Clemm commented Dec 12 '16, 4:02 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER

A change set is always in some component, so when you checkin a new version of a file into a change set, that version of that file is now automatically "added to that component".   But I don't think that is what you are thinking of when you say "update the component".
It sounds like the key point you are missing is that a component is not a configuration.  You do not deliver a change set to a component, because you only deliver a change set to a mutable configuration (e.g., usually to a stream, although sometimes to a workspace that you own).
So you do not create a stream from a component.   You create a stream, and you can extend the scope of the stream to include an additional component, in which case you have to specify what configuration of that component you want to appear in your stream.
In addition, a stream does not "refer to a baseline" ... it refers to a sequence of change sets (which may at a particular point in time be the same sequence of change sets referred to by some baseline).

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.