Как найти новые недоставленные файлы для данного потока UCM

Мы используем UCM для разработки. Создаем потоки под потоками, вот так

child_streams

Вопрос в том, как найти новые файлы в заданном потоке.

В примере «feat1» будет иметь новые файлы относительно его родительского lis1 (lis = локальный поток интеграции). Новые файлы могут быть из «feat1» или его дочерних потоков, таких как «developer1». Как мне определить новые файлы в lis1?

Один из вариантов - создать динамические представления в потоке (скажем, feat1) и его родительском потоке (lis1), взять diff и определить новые файлы в дочернем потоке.

Другой вариант - использовать cleartool deliver -preview и получить список версий, а затем каким-то образом (я этого еще не знаю) выяснить список файлов.
Проблема в том, что дочерний поток не обязательно перебазируется на его родительский, и мы применяем Правило "переустановить до последней базовой линии перед доставкой".

Надеюсь, есть лучший и правильный способ :)


person Jayan    schedule 02.03.2011    source источник
comment
Под новыми файлами вы также подразумеваете измененные файлы?   -  person VonC    schedule 02.03.2011
comment
Нет. Я имел в виду только созданные файлы. Но я хотел бы знать ответ!   -  person Jayan    schedule 02.03.2011
comment
Вам нужна дополнительная информация относительно моего ответа?   -  person VonC    schedule 20.03.2012
comment
@VonC: когда я попробовал это вчера, запрос вернул все версии. Использование элемента вместо версий дало результат.   -  person Jayan    schedule 21.03.2012
comment
В порядке. Я отредактировал ответ, чтобы сделать правильный синтаксис более заметным. Можете ли вы пересмотреть этот ответ?   -  person VonC    schedule 21.03.2012
comment
@VonC: Я принял новый ответ ..   -  person Jayan    schedule 21.03.2012
comment
Итак, я увидел, чем вы :) Если вам нужны дополнительные уточнения, достаточно простого комментария. Если у вас есть другие вопросы по ClearCase, я отвечу на них.   -  person VonC    schedule 21.03.2012


Ответы (1)


Я не думаю, что _ 1_ (как и его не-UCM эквивалент _ 2_) отобразит полный список измененных / новых файлы.

Для новых файлов он будет отображать только те каталоги, которые нуждаются в слиянии (для ссылки или отмены ссылки на файлы, добавленные / удаленные во время этого слияния).

Один из способов (без использования внешнего инструмента сравнения): _ 3_ запрос на поиск любого файла:

  • с версиями в ветке 'developer1'
  • без версий в ветке 'lis'

Что-то вроде (не проверено):

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

В случае с OP Jayan:

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

Будет перечислять только необходимые элементы (т.е. файлы, а не все версии этих файлов)

person VonC    schedule 02.03.2011