Ответ 1
Я пытаюсь посмотреть на кучу старых версий
Я не уверен, что вы говорите о "кучке старых версий" одного файла, "пучке старых версий" из нескольких файлов.
Чтобы визуализировать несколько старых версий одного файла, самым простым является отображение его дерева версий (ct lsvtree -graph File
), а затем выберите версию, щелкните ее правой кнопкой мыши и "Send To
", который принимает несколько файлов (например, Notepad ++). Через несколько кликов вы увидите эти старые версии.
Примечание: вы должны иметь CC6.0 или 7.0.1. IFix01 (7.0.0 и 7.0.1 не могут "отправить" в файл со следующим сообщением об ошибке "Access to unnamed file was denied
" )
Но для визуализации нескольких старых версий разных файлов я бы рекомендовал динамическое представление и редактирование спецификации конфигурации этого представления (а не представление моментального снимка, в котором вы сейчас работаете), чтобы быстро выбрать все эти старые файлы ( надеюсь, с помощью простого правила выбора, например "element * aLabel
" )
[Из комментариев:]
какой идиоматический способ "cat" более ранней версии файла?
Идиоматический способ заключается в представлении динамическое (которое вы настраиваете с помощью той же конфигурации конфигурации, что и существующее существующее снимок).
Затем вы можете просматривать (как в разделе "изменить каталог" ) различные расширенные пути файла.
Если вы хотите котировать все версии ветки файла, вы заходите в:
cd /view/MyView/vobs/myVobs/myPath/[email protected]@/main/[...]/maBranch
cat 1
cat 2
...
cat x
'1
', '2
',... 'x
' является версией 1, 2,... x вашего файла в этой ветке.
Для представления моментального снимка расширенный путь недоступен, поэтому ваш "взлом" - это способ пойти.
Однако 2 замечания здесь:
- чтобы быстро отобразить все предыдущие версии файла моментальных снимков в данной ветке, вы можете ввести:
(однострочная версия для copy-paste, синтаксис Unix:)
cleartool find addon.xml -ver 'brtype(aBranch) && !version(.../aBranch/LATEST) && ! version(.../aBranch/0)' -exec 'cleartool diff -ser empty "$CLEARCASE_XPN"'
(многострочная версия для чтения:)
cleartool find addon.xml -ver 'brtype(aBranch) && !version(.../aBranch/LATEST) && ! version(.../aBranch/0)' -exec 'cleartool diff -ser empty "$CLEARCASE_XPN"'
- вы можете быстро получить выход немного лучше с
(однострочная версия для copy-paste, синтаксис Unix:)
cleartool find addon.xml -ver 'brtype(aBranch) && !version(.../aBranch/LATEST) && ! version(.../aBranch/0)' -exec 'cleartool diff -ser empty "$CLEARCASE_XPN"' | ccperl -nle '$a=$_; $b = $a; $b =~ s/^>+\s(?:file\s+\d+:\s+)?//g;print $b if $a =~/^>/'
(многострочная версия для чтения:)
cleartool find addon.xml -ver 'brtype(aBranch) && !version(.../aBranch/LATEST) && ! version(.../aBranch/0)' -exec 'cleartool diff -ser empty "$CLEARCASE_XPN"' | ccperl -nle '$a=$_; $b = $a; $b =~ s/^>+\s(?:file\s+\d+:\s+)?//g; print $b if $a =~/^>/'
Таким образом, результат лучше.
"cleartool get
" команда (справочная страница) упомянутая ниже Brian не делают stdout:
Команда get копирует только элементы файла в представление.
В системе UNIX или Linux скопируйте
/dev/hello_world/[email protected]@/main/2
в текущий каталог.
cmd-context get –to foo.c.temp /dev/hello_world/[email protected]@/main/2
В системе Windows скопируйте
\dev\hello_world\[email protected]@\main\2
в каталогC:\build
.
cmd-context get –to C:\build\foo.c.temp \dev\hello_world\[email protected]@\main\2
Таким образом, возможно, если, передав результат в cat
(или type
в windows), вы можете сделать что-то с выходом указанной команды cat
(type
).
cmd-context get –to C:\build\foo.c.temp \dev\hello_world\[email protected]@\main\2 | type C:\build\foo.c.temp