Как я могу применить метку к элементам, выбранным определенным правилом configspec в ClearCase?

Мне нужно применить метку к определенному набору элементов в VOB, которые выбираются строкой в ​​моей конфигурации. В моей конфигурации есть и другие строчки.

Например, скажем, вот моя конфигурация.

element * .../bugfixesApril/LATEST
element * WORK122014_v2

Как применить метку к набору элементов, которые выбираются правилом bugfixesApril / LATEST?

Бывают случаи, когда родительская папка не выбрана тем же правилом, и элементы, к которым должна быть применена метка, не находятся в одном месте. Они распространены по всему ВОБ

У меня есть файл csv, содержащий список файлов с полным путем (включая номер версии), где должна быть применена метка


person Gavin    schedule 27.04.2015    source источник


Ответы (1)


Самое простое решение - иметь другое представление (желательно динамическое) только с правильными правилами выбора, чтобы выбирать только ту версию, которую вы хотите.

Затем вы можете использовать это представление для своего _ 1_.

Чтобы пометить только файлы, а не родительскую папку, вы можете объединить mklabel в директиву cleartool find, подобную "Как мне найти все элементы в ветке с версией ПОСЛЕДНИЙ, к которой не применен ярлык? ".

person VonC    schedule 27.04.2015
comment
Но если родительская папка данного элемента не выбирается правилом, разве это не сделает элемент невидимым? - person Gavin; 27.04.2015
comment
@BarnabasGavinCangan Да, это будет: следовательно, в динамическом представлении вы можете добавить соответствующие правила для отображения всех нужных элементов. - person VonC; 27.04.2015
comment
Но если я добавлю больше правил, чтобы сделать другие элементы видимыми, как мне применить метку только к первоначально выбранному набору элементов (тем, которые были выбраны первым правилом)? Да, я все еще могу использовать команду mklabel по одному файлу, но я искал решение, которое позволило бы мне применить метку к примерно 100 элементам в версиях, указанных в файле .csv - person Gavin; 27.04.2015
comment
@BarnabasGavinCangan - правило, которое вы должны добавить, только для того, чтобы родительские папки были видны (выбраны). Элементы в этих родительских папках будут только теми, которые вы хотите пометить, из-за другого правила, такого как bugfixesApril/LATEST. - person VonC; 27.04.2015
comment
Извините, что я недостаточно четко объяснил это в вопросе. Моя проблема в том, что у меня есть около 100 элементов, проверенных в VOB, который содержит более 5000 элементов. И все эти элементы разбросаны по всему ВОБ. Также, если я использую правила configspec, чтобы сделать видимыми все соответствующие родительские папки, метка также будет применена к родительским папкам. Но поскольку эта папка на самом деле не была мной проверена, я не должен наклеивать на них свой ярлык. - person Gavin; 27.04.2015
comment
@BarnabasGavinCangan Конечно, метка должна быть применена к этим родительским папкам. Или вы получите метку, которая не сможет выбрать эти 100 элементов, поскольку их родительские папки не будут выбраны с помощью той же метки. - person VonC; 27.04.2015
comment
Этот ярлык, который я собираюсь применить, не является отдельным ярлыком и всегда будет использоваться с соответствующим ярлыком интеграции ниже. Примерно так: element * WORK122014_v2 element * RELEASE_MAJOR_3_4 Итак, мне не нужно применять метку к родительским папкам. - person Gavin; 27.04.2015
comment
@BarnabasGavinCangan, тогда вы можете применить метку через cleartool find . -type f -exec 'mklabel newlabel "$CLEARCASE_XPN"' (как в stackoverflow.com/a/4508418/6309). Если вы можете найти команду cleartool find, которая выбирает только файлы (-type f), которые вы хотите пометить, все готово. - person VonC; 27.04.2015
comment
stackoverflow.com/questions/5193832/ - person Gavin; 27.04.2015
comment
@BarnabasGavinCangan Отлично! Я включил эту ссылку в ответ для большей наглядности. - person VonC; 27.04.2015