Ветка только на определенных расширениях в открытом регистре

Я пытаюсь написать конфигурационный файл, который будет разветвляться только для определенных типов файлов (IE Docs может быть болезненным, поэтому мы хотим избежать этого).

Прямо сейчас у меня есть следующие расширения: *.txt и *.pl (например)

Я пытался:

element * CHECKEDOUT
element -directory * \main\LATEST
element '{*.txt||*.pl}'  \main\BLARG\LATEST
element '{*.txt||*.pl}'  \main\LATEST -mkbranch BLARG

И некоторые варианты с использованием скобок и еще много чего.

Я просто сбит с толку, я обнаружил, что в определенных контекстах вы можете использовать операторы сравнения, подобные C++, но не можете заставить это работать.

(смотрите раздел языка запросов здесь: http://publib.boulder.ibm.com/infocenter/cchelp/v7r0m0/index.jsp?topic=/com.ibm.rational.clearcase.cc_ref.doc/topics/config_spec.htm

Я должен быть в состоянии использовать: запрос && запрос

Можно ли разрешить ветвление только для определенных типов файлов, используя конфигспекцию, и если да, то какие-нибудь советы / подсказки / что-то, что поможет мне двигаться в правильном направлении?

РЕДАКТИРОВАТЬ: читая по ссылке, которую я послал (одна из страниц на этом сайте в любом случае), вы можете настроить его, используя что-то с эффектом

element * CHECKEDOUT
element -directory * \main\LATEST
element *.[hc]  \main\BLARG\LATEST
element *.[hc]  \main\LATEST -mkbranch BLARG

Это должно соответствовать любым файлам h и c, которые вы просматриваете, и разрешать ветвление на их основе.

element * CHECKEDOUT
element -directory * \main\LATEST
element *.txt  \main\BLARG\LATEST
element *.txt  \main\LATEST -mkbranch BLARG

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

element * CHECKEDOUT
element -directory * \main\LATEST
element *.txt  \main\BLARG\LATEST
element *.pl  \main\BLARG\LATEST
element *.txt  \main\LATEST -mkbranch BLARG
element *.pl  \main\LATEST -mkbranch BLARG

Наша группа разветвляет только определенные наборы файлов по разным причинам, одна из которых заключается в том, что в некоторых случаях слияние сложно (обратите внимание на файлы.doc). Я собирался написать конфигспекцию, которая автоматически разветвляет то, что наша команда определяет как "ветвистую", а в остальном просто проверяет main.

Я надеюсь, что моя проблема проясняется, и я думаю, что это не совсем то, о чем вы говорите в своем первоначальном ответе VonC (я думаю), пожалуйста, дайте мне знать, если ваш ответ остается в силе.

1 ответ

Решение

Нет, это не представляется возможным (если вы не перечислите каждый тип, который вы хотите разветвить), и по какой-то причине.
Идея ветвления состоит в том, чтобы изолировать историю для группы файлов (не для некоторых конкретных частей этой группы).
Эта идея была подкреплена UCM и его понятием компонента UCM (связный набор файлов, который разветвляется как все, и который помечается как единое целое).
Подробнее о "компоненте" читайте в статье " Лучшие практики использования составных базовых показателей в UCM".

Компонент UCM

Поэтому пытаться изо всех сил изогнуть инструмент, чтобы добиться того, чтобы одна организация по выборочному версионированию могла быть неправильной.

Изоляция этих файлов в их собственных "компонентах", а затем их использование через символические ссылки обратно в исходную древовидную структуру - это одно из возможных решений (может быть и другое), которое по крайней мере лучше (и напоминает понятие подмодулей или подмодулей леса, используемые другими (D)VCS)


Плюс, если вы переходите по той причине, что это "трудно" объединить:

  • это не устранит проблему слияния, если вы сделаете изменение в своей собственной ветке (слияние должно быть выполнено рано или поздно)
  • .doc Документ Word может быть теоретически объединен через ms_word менеджер типов.
    См. " О слиянии файлов Microsoft Office в ClearCase"
  • чтобы автоматическое объединение не блокировалось бинарными артефактами вроде .ppt например, активируйте для этого типа политику слияния-копирования, как показано в " Clearcase UCM пытается объединить PDF-файлы".

Копия-слияние

Я понимаю, что вы осуществляете ветвление по другим причинам, которые могут быть действительными, но опять же, мне нравится моя политика ветвления, простая, управляемая и масштабируемая.

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