[CM] - Adding baselines to a Global Configuration
What's the usage scenario in which we'd add a Baseline to a Global Configuration?
In my understanding we'd:
1. Create the initial streams
2. Gather them in a GC
3. Baseline the GC ("Main Stream Baseline")
4. Create a new GC stream based on the GC Baseline
In my understanding we'd:
1. Create the initial streams
2. Gather them in a GC
3. Baseline the GC ("Main Stream Baseline")
4. Create a new GC stream based on the GC Baseline
5. Work on the new GC stream "pieces"
6. Baseline the new GC ("Parallel Stream Baseline")
Whenever I think of either Parallel Releases or Variants, I think we'd follow the steps above, so I don't understand being able to add an existing Baseline to a GC.
Whenever I think of either Parallel Releases or Variants, I think we'd follow the steps above, so I don't understand being able to add an existing Baseline to a GC.
One answer
Two cases come to mind:
1. Regarding step (3): you cannot baseline a GC until all the contributions to that GC are baselines. So baselines are currently "bottom-up" meaning you create the baseline in each tool, then you can replace the contributing stream with the corresponding baseline. Repeat for each contribution to the GC.
2. Imagine you have product or application with many sub-systems, and each subsystem has its own GC. Imagine you are planning a new release which involves changes to only one subsytem. In your top-level GC stream, you would include baseline contributions for all subsystems that are not changing. Later this will make it easy to see which levels of the subsystems are part of each product release or product variant, so if you need to release a fix pack, you know which product releases/variants are affected.
1. Regarding step (3): you cannot baseline a GC until all the contributions to that GC are baselines. So baselines are currently "bottom-up" meaning you create the baseline in each tool, then you can replace the contributing stream with the corresponding baseline. Repeat for each contribution to the GC.
2. Imagine you have product or application with many sub-systems, and each subsystem has its own GC. Imagine you are planning a new release which involves changes to only one subsytem. In your top-level GC stream, you would include baseline contributions for all subsystems that are not changing. Later this will make it easy to see which levels of the subsystems are part of each product release or product variant, so if you need to release a fix pack, you know which product releases/variants are affected.
Comments
Thanks Daniel.
Item #2 makes sense to me (and tells me about the "usage scenario" I wasn't perceiving).
As for item #1, though, is it the plan to keep it so we cannot baseline a whole GC at once? I realize we may to do it independently as well, but I suspect not being able to baseline it all at once, especially for larger GCs, may became an issue (ie. it could take a long time navigating to all the different configs, baselining them, going back to the GC and replacing them all).
Being able to baseline the whole GC at once (i.e. recursively create baselines in all the contributors) is the top GC request from my customers, so I am pushing to get that functionality into the product. You can vote for work item Automatically create LC baselines as part of the recursive GC baseline creation (340312) if this functionality is important to you.