Поиск ClearCase для регистрации с конкретным комментарием - PullRequest
7 голосов
/ 21 апреля 2009

Меня попросили предоставить подробную информацию о регистрации, которую я сделал около 3 месяцев назад в ClearCase. Я знаю номер КК, который был включен в комментарий, но до сих пор не смог найти способ найти ClearCase для проверки по комментарию.

Есть идеи?

Ответы [ 2 ]

9 голосов
/ 21 апреля 2009

Брайан Агнью на правильном пути, но слово предостережения:

  • Я уверен, что вторая командная строка НЕ ​​нужна (cleartool find . -version !"lbtype(LABEL_NAME)"...)
  • 'cleartool find -all' полезно, если вы считаете, что ваш файл мог быть перемещен, но на большом VOB этот процесс может быть очень длинным
  • без опции '-nvis', файл не будет найден, если он был «назван» (удален)
  • использование 'lshistory -minor' - это явное безумие : на VOB с несколькими месяцами или годами истории это просто займет слишком много времени. Для каждого найденного элемента будет отображаться история ВСЕХ для всех версий этого элемента, без какой-либо возможности уточнять отображаемый набор версий. Это решение просто не масштабируется.
    Это, и опция -minor команды 'lshistory' не приносит никакого значения для рассматриваемой проблемы: она будет отображать только одну и ту же версию несколько раз, просто из-за внутренних комментариев типа 'Attached hyperlink "Change@13707xx@\my_pvob "' или 'Attached hyperlink "Merge@xxxx@\my_vob"'

Вам необходимо уточнить ваш запрос:

  • требуемый тип элемента (если это файл: -type f)
  • дата "created_since(30-Jan)&&!created_since(28-Feb))", например, ограничит диапазон дат для рассмотрения
  • пользователь

Я бы использовал:

M:\my_base_view\my_base_vob>
  cleartool find -all -type f -user myLogin -version "{created_since(30-Jan)&&!created_since(28-Feb)}" -exec "cleartool descr -fmt \"%n\t%c\n\" \"%CLEARCASE_XPN%\"" >c:\output.txt

Это будет искать только те файлы, которые были проверены мной в течение определенного периода времени, что позволяет просматривать меньший набор версий.

Обратите внимание, что я использую 'descr' (команда describe), которая предназначена только для текущей версии (а не для отображения всей истории элемента, подобного 'lshistory', ).

Если ваш файл был назван по имени, снова запустите ту же команду с параметром -nvis (он найдет только те элементы, их ветви и версии, которые не видны (не имеют стандартного пути) в вид.

Предупреждение: если вы укажете дату «до» с указанием дня «в будущем» (например, «&&!created_since(28-Apr)}», тогда как мы еще не 28 апреля), он всегда будет выбирать 0 версий (!? ).
Это не относится к вашей проблеме, но если вы по ошибке введете «неправильную дату до», это может привести к ложному впечатлению, что нет версии для поиска, где на самом деле есть версии для поиска.

3 голосов
/ 21 апреля 2009

Вы смотрели на это ? Конкретно раздел ниже.

Как найти элементы и версии с конкретными комментариями

Я хочу найти все элементы / версии с конкретными комментариями, такими как «Джейн изменила это 11-26»

M: \ my_base_view \ my_base_vob> cleartool find -all -exec "cleartool lshistory -minor -fmt \"% n \ t% c \ n \ "\"% CLEARCASE_XPN% \ ""> c: \ output.txt

** Это перенаправит вывод в файл, и вам придется выполнить поиск в файле для конкретных комментариев, которые вы ищете.

M: \ my_base_view \ my_base_vob> поиск в cleartool. -version! "lbtype (LABEL_NAME)" -exec "cleartool description -long% CLEARCASE_PN%"> c: \ output2.txt

Выглядит немного странно, к сожалению.

...