Как я могу получить незарезервированную проверку ClearCase, используя Perl? - PullRequest
0 голосов
/ 25 февраля 2010

Мне нужна помощь по приведенным ниже требованиям.

У меня есть извлеченный отчет, в котором я использовал «номер редакции», сведения об элементе, путь к версии, набор изменений.

Мне нужно:

  1. Создайте временный каталог, используя скрипт Perl для каждой ревизии.

  2. Сделайте безоговорочную проверку для каждой карты элементов с каждой ревизией и поместитев созданные временные папки.

Я могу создать временный каталог (например, для номера 100 ревизий, способного создать 100 папок), но мне нужна помощь, чтобы написать кусок кода, чтобы сделатьнезарезервированная проверка (до этого действия создания, установки действия) каждого элемента, связанного с каждой ревизией, и помещения файла в определенную созданную папку.Также внедрите отмену извлечения без резервирования после успешного копирования.

Данные похожи на

Revision#       Element                    version_path            changeset
-------  ---------------------------     ---------------          ------------
1  C:\views\xyz_mn-11\gahdg\test.java    \main\sdgks-1111_Int\3"  "C:\views\xyz_mn-11 
                                                               \gahdg\test.java@@\main
                                                                \sdgks-1111_Int\3"         
2
3
4

Пожалуйста, дайте некоторые предложения или ценные рекомендации по этому вопросу.

Ответы [ 2 ]

2 голосов
/ 25 февраля 2010

Один из способов выполнить внешнюю команду из Perl - использовать system :

my $cmd = 'cleartool checkout -unr -nc -out -ver \main\sdgks-1111_Int\3 test.java';
if (system $cmd) {
    die "Error: $cmd";
}
1 голос
/ 26 февраля 2010

Проверьте также вопрос Как я могу взаимодействовать с ClearCase из Perl? , где вы сможете выполнить команду cleartool в Perl с пакетом CCCmd .

CCCmd::ClearToolNoError("cleartool checkout -unr -nc -out -ver \main\sdgks-1111_Int\3 test.java");

Однако после прочтения checkout справочной страницы я не уверен, что это правильный синтаксис

cleartool checkout -unr -nc -out /my/temp/file -ver test.java@@\main\sdgks-1111_Int\3

было бы больше похоже на использование расширенной формы pathname для ссылки на нужную версию для извлечения из test.java.

...