Я использовал ClearQuest для экспорта запроса в CSV-файл, содержащий информацию обо всех моих действиях разработчика. Однако описание урезано. Есть ли команда cleartool, которая может вывести полное описание данного действия?
Как получить полное описание активности в cleartool?
Ответы (2)
Можешь попробовать
cleartool descr -l activity:MyActivity@\myPVob
Необходимо использовать полное имя действия: activity:xxx@\mypvob
(Windows) или activity:xxx@/vobs/mypvob
(Unix).
Вы также можете изучить fmt_ccase
, чтобы описать только то, что вы хотите из длинного описания, данного простым descr -l
.
%[versions]CQp
будет перечислять все версии данного действия%c
будет отображать только комментарий, связанный с действием
Так что этого может быть достаточно:
cleartool descr -fmt "%c" activity:MyActivity@\myPVob
or
cleartool lsactivity -fmt "%c" activity:MyActivity@\myPVob
Заголовок будет получен с %[headline]p
.
Эти данные должны быть доступны, даже если в проекте с поддержкой ClearQuest любое действие UCM автоматически переходит к рабочему элементу ClearQuest, связанный через SQUID (SUM ClearQuest Integration Doodad).< br> Как упоминалось здесь, %[crm_record_id]p
и %[crm_state]p
предоставляют доступ к идентификатор записи ClearQuest® и состояние действия.
Однако, что касается конкретного комментария, вы не найдете его в действии ClearCase.
Как показано на это техническое примечание, оно выглядит так:
cleartool lsact -long ACT00032163
activity "ACT00032163"
16-May-06.14:58:24 by Joe User (jou)
"Created automatically as a result of 'Work On' action in ClearQuest"
owner: jou
group: liteline
stream: jou-act3g-v1.0-2@/vobs/projects
title: Draft of Test cases for UC01-1,2,3,7,8,10,11,30,32 and 04-2
change set versions:
...
Таким образом, комментарий ClearCase является сгенерированным.
Для доступа к полю Description записи ClearQuest вам необходимо использовать ClearQuest API (например, сценарий VB):
- сначала в создать сеанс ClearQuest,
- затем получение нужной записи по ее id, который у вас есть через
%[crm_record_id]p
, как было сказано выше.
Это было бы что-то вроде:
require CQPerlExt;
$CQsession = CQSession::Build();
set cqrecord = sessionObj.GetEntity("defect", "BUGID00000031")
set cqdescrfield = cqrecord.GetFieldValue("Description")
set cqdescr = cqdescrfield .GetValue()
%c
не вернуло того, что я ожидал (сейчас его нет рядом со мной, но оно было создано автоматически с помощью действия «Работать»).
- person Amir Rachum; 31.12.2012
Вы можете использовать что-то вроде...
foreach act ( `cleartool lsact -s` )
set changeset = `cleartool lsact -fmt "%[versions]p" $act`
echo $changeset | tr ' ' '\n' >> $tmpoutput
end
foreach line ( "`cat $tmpoutput`" )
set file=`echo $line | sed -e "s|\(.*\)@@.*|\1|"`
end
В этом списке измененный набор для активности (исключая @@).
Источник:
http://www.snip2code.com/Snippet/961/list-files-changed-in-clearcase-ucm-stre?fromPage=1