How to find new undelivered files for a given UCM "stream"
Asked Answered
G

1

1

We use UCM for development. We create streams under streams, like this

child_streams

Question is how to find new files in a given stream.

In the example "feat1" would have new files relative to its parent lis1 (lis=local integration stream). The new files could be from "feat1" or its child streams like "developer1". How could I identify new files in lis1?

One option is to create dynamic views on a stream (say feat1) and its parent stream(lis1) and take diff and figure out files new in the child stream.

Another option is to use cleartool deliver -preview and get list of versions and then somehow (I do not know it yet) figure out the list of files.
The problem is the child stream is not necessarily rebased to its parent, and we enforce a "rebase to latest baseline before delivery" rule.

I hope there is a better and correct way :)

Guillemette answered 2/3, 2011 at 11:36 Comment(7)
By new files, do you also mean modified files?Roseliaroselin
No. I meant only created files. I would like to know the answer though!Guillemette
Do you need more information regarding my answer?Roseliaroselin
@VonC: when I tried this yesterday, the query returned all versions. Using 'element' instead of versions gave the result.Guillemette
Ok. I have edited the answer to make the right syntax more visible. Can you reconsider this answer?Roseliaroselin
@VonC: I accepted the new answer..Guillemette
So I have seen, than you :) If you need any additional precisions, a simple comment is enough. If you have any other ClearCase question, I will answer them.Roseliaroselin
R
2

I don't think a cleartool deliver -preview (like its non-UCM equivalent cleartool findmerge -preview) would display the full list of modified/new files.

For new files, it would only display the directories that need merges (in order to reference or un-reference the files added/removed during that merge).

One way (without using an external diff tool) would be a cleartool find request in order to find any file:

  • with versions in a 'developer1' branch
  • without any versions in a 'lis' branch

Something like (not tested):

cleartool find . -type f -version "brtype(developper1) && !brtype(lis)" -print

In the OP Jayan's case:

cleartool find . -type f -element "brtype(developper1) && !brtype(lis)" -print

Will list only the needed elements (ie files, and not all the versions of those files)

Roseliaroselin answered 2/3, 2011 at 11:46 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.