How to find new undelivered files for a given UCM “stream”

安稳与你 提交于 2019-12-23 02:26:46

问题


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

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 :)


回答1:


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)



来源:https://stackoverflow.com/questions/5166904/how-to-find-new-undelivered-files-for-a-given-ucm-stream

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!