Если метка была установлена на самом vob и на всех элементах (например: /<vobtab>/dir1
, /<vobtab>/dir1/dir2/
, /<vobtab>/dir1/dir2/*
), тогда следующая спецификация конфигурации принесет только помеченные элементы, а не остальную часть элементы vob:
element * checkedout
element * label_ID
element * -none
Но если label_ID был установлен для всех элементов в /<vobtab>/dir1/dir2/*
, , а не на /<vobtab>/dir1/
(сама родительская папка) или не на /<vobtab>/
(корневая папка самого vob), то эта спецификация конфигурации не принесет элементы вообще.
Обходной путь - выбрать родительские элементы:
element * checkedout
element * label_ID
element /<vob_tag>/dir1 /main/LATEST
element /<vob_tag> /main/LATEST
element * -none
Я бы рекомендовал делать это в динамическом представлении (которое можно очень быстро обновлять после каждого изменения спецификации конфигурации) вместо представления моментального снимка (который должен перезагружаться после каждого setcs
)
Другой подход, не основанный на спецификации конфигурации (поскольку может быть трудно выбрать правильные родительские папки для доступа к помеченным элементам), заключается в использовании _ 10_ запрос.
См.:
По сути, вы можете перечислить только отмеченный элемент, перейдя в ваше «желательно динамическое» представление и выполнив:
UNIX и Linux:
cleartool find -cview -element '{lbtype_sub(REL1)}' -print
Windows:
cleartool find -cview -element "{lbtype_sub(REL1)}" -print
Вместо использования -print
вы можете использовать -exec "a command"
и использовать параметр exec для выполнения любой команды, например, копирования того, что вы только что нашли:
cleartool find -cview -element "{lbtype_sub(REL1)}" -exec "copy \"%CLEARCASE_PN%\" c:\a\path"
cleartool find . –version "lbtype(LB_TYPE)"
Если команда слишком привередлива, просто перенаправьте результат в файл:
cleartool find -cview -element "{lbtype_sub(REL1)}" -print > file.txt
Затем обработайте этот файл, чтобы скопировать его содержимое, как в «Пакет: скопируйте список (txt) файлов»:
@echo off
set src_folder=c:\whatever
set dst_folder=c:\target
for /f "tokens=*" %%i in (File-list.txt) DO (
xcopy /S/E/U "%src_folder%\%%i" "%dst_folder%"
)
person
VonC
schedule
12.03.2015