Как выполнить рекурсивную проверку с использованием ClearCase?

Я хочу проверить все файлы во всех подкаталогах указанной папки.

(И это болезненно делать с помощью графического интерфейса, потому что нет опции рекурсивного извлечения).

2 ответа

Решение

Осторожно: ClearCase ориентирован на файл, а не на репозиторий (например, SVN или CVS).

Это означает, что это редко является хорошим решением для извлечения всех файлов (и это может быть довольно долго с ClearCase;))

При этом вопрос совершенно законный, и я хотел бы указать на другой путь:

открыть cleartool сеанс в "указанной папке":

c:\MyFolder> cleartool
cleartool> co -c "Reason for massive checkout" .../*

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

cleartool find somedir -type f -exec "cleartool checkout -c \"Reason for massive checkout\" \"%CLEARCASE_PN%\""

будет только проверять файлы...

Теперь проблема состоит в том, чтобы проверить все, что изменилось. Это проблематично, поскольку зачастую не все изменилось, и CleaCase будет выдавать сообщение об ошибке при попытке проверить идентичный файл. Это означает, что вам понадобятся 2 команды:

ct lsco -r -cvi -fmt "ci -nc \"%n\"\n" | ct
ct lsco -r -cvi -fmt "unco -rm %n\n" | ct

(с 'ct существоcleartool': тип 'doskey ct=cleartool $*на Windows, чтобы установить этот псевдоним)

Обратите внимание, что ct ci -nc войдет с комментарием, используемым на этапе оформления заказа.
Так что это не регистрация без комментариев (например, -nc вариант - или "без комментариев" - может заставить поверить).

cleartool find somedir -exec "cleartool checkout -nc \"%CLEARCASE_PN%\""

Также может быть полезна статья " ClearCase: десять лучших сценариев"

Другие вопросы по тегам