Получите конкретную версию выгруженного файла с помощью cleartool

Итак, я пишу сценарий на работе, где мне нужно просмотреть все проекты в ClearCase vob, найти файл и проанализировать некоторую информацию из указанного файла.
Естественно, я не хотел бы загружать каждый отдельный проект поэтому я использую cleartool для извлечения выгруженных файлов.
Во-первых, я использую команду find для поиска файлов. Это была моя первая попытка:

root>cleartool find C:/viewpath -name file.txt -version "lbtype(Version-label)" -print -nr

Viewpath - это путь к проекту, в котором я сейчас ищу файл. Файл, который я ищу, file.txt в версии, указанной меткой версии.
Это не дало мне никакого результата, хотя я знал, что file.txt существует в этой версии.
Я понял, что он просматривает старую версия каталога, последняя в основной ветке, которая была до того, как file.txt был добавлен в каталог. Вместо этого я попробовал это:

root>cleartool find C:/viewpath@@/Version-label -name file.txt -version "lbtype(Version-label)" -print -nr

И получил результат, который я искал

C:/viewpath\file.txt@@\main\branch\41

Итак, теперь, когда я знал, где найти файл, я попытался его достать.

root>cleartool get -to savepath C:/viewpath\file.txt@@\main\branch\41

Что дало мне такой результат

cleartool: Error: "C:/viewpath\file.txt@@\main\branch\41" does not exist, or is not a ClearCase version, or is a checked out version which was removed.

Также пробовал

root>cleartool get -to savepath C:/viewpath\file.txt@@/Version-label

С тем же результатом

Я могу получить файлы, добавленные в каталог, когда он все еще находился в основной ветке, поэтому он все еще ищет в каталоге в основной ветке, где file.txt нигде не найти.
Как мне сказать ему, чтобы он выглядел через версию каталога после того, как он был разветвлен от основного?


person Nait    schedule 26.08.2011    source источник


Ответы (1)


Я бы очень порекомендовал вам попробовать те же команды в динамическом представлении.
Как показано здесь, динамическое представление дает вам доступ к расширенному пути (синтаксис file@@/branch/version), что означает, что команда типа get будет работать. < br> В этом вопросе вы найдете пример поиска ( cleartool find) с использованием расширенных путей.

Как объясняется в разделе «В ClearCase, как я могу просмотреть старую версию файла в статическом представлении из командной строки?", вы можете просматривать (например, 'сменить каталог на ') различные расширенные пути файла в динамическом представлении.

person VonC    schedule 26.08.2011
comment
См. stackoverflow.com/questions/2923328/ в динамических представлениях. - person VonC; 26.08.2011
comment
Я здесь просто дачник и, к сожалению, не знаю, следует ли использовать динамические или статические представления. Нет возможности сделать это со статическим представлением? - person Nait; 26.08.2011
comment
@Nait: Да, через ct diff, как показывает моя последняя ссылка (stackoverflow.com/questions / 176858 /). Но динамические представления созданы именно для того, чтобы получить доступ ко всем версиям проводника и all (и вы отлично можете сделать снимок и динамическое представление с той же конфигурацией). - person VonC; 26.08.2011