It's all about the answers!

Ask a question

Is there a way to compare more than two streams?

Antonios Liamis (113) | asked May 13 '16, 7:32 a.m.


I would like to compare multiple streams to streams (or baselines). 
As for now, it is only possible to compare two streams... 
Or could at least someone explain to me, why this limitation exists in the first place?

Best regards

2 answers

permanent link
Ralph Schoon (59.7k23643) | answered May 13 '16, 7:39 a.m.
edited May 13 '16, 7:46 a.m.
 What would you expect to see if you compare more than two?

If you compare two items, you see one result set of differences.
If you compare three items you would see three result sets of difference (one between each combination) 
If you compare 4, you would see 6 result sets of differences and it is only getting worse. If you do the math it is growing with the square.

I don't think you would gain anything and I have yet to see a reasonable usecase, why pair wise comparison won't be enough, or what the desired outcome would otherwise be.

Three way compare, with the central one being the common ancestor is the most I have ever seen so far and that only in Clear Case and for one file element in merges, not for the whole configuration, as far as I remember.

Ralph Schoon commented May 13 '16, 7:49 a.m.

 If you want to know if a specific change set is in a bunch of streams or not, you can do that using locate change set in one go. This is a completely different use case and only remotely has any relationship to comparing all these streams.

permanent link
Stephen Woo (817) | answered May 13 '16, 11:15 a.m.
Ralph, you are right that normally a user just want to compare two streams at a time. 
Carmen, I do agree that occasionally I see the need to look at an artifact in various streams. For example, I may want to see a requirement that has branched into 2017, 2018, etc streams. 

  Stream2016 Stream2017 Stream2018 Stream2019
Requirement 1 4 4 4 4
Requirement 2 6 7 8 9
Requirement 3 5 5 5 5

Two months ago an IBM consultant said that they may consider this enhancement request.

Ralph Schoon commented May 13 '16, 2:04 p.m. | edited May 13 '16, 2:08 p.m.


as I already mentioned in my answer above, locating if a change set is in a stream or workspace or snapshot (with an arbitrary amount of items to look at) is available since RTC 4.0.x. The feature is called locate change set.

This is completely different from comparing multiple streams though. It only tells you that changes are in a specific configuration (or aren't). 

Ralph Schoon commented May 13 '16, 2:07 p.m. | edited May 13 '16, 2:09 p.m.

 And to make this totally clear, a requirement is implemented by a bunch of changes that are in a set of change sets. Today you might have to find the work items that implement that requirement. You can then feed the work items (hierarchy or flat, with the linked change sets) into the "Locate Change Set" query and basically find out if the changes are in a configuration you provide for searching.

Your answer

Register or to post your answer.