2009-07-08 8 views
1

у меня есть 3 проекта A, B на основе A, C на основе А.Clearcase UCM: как найти версии в поток, созданный путем слияния из потока В

Изменения А должен первым быть объединены в B, а затем из в к С. есть также изменения в в не затрагивая а, но некоторые из этого изменилось должны быть объединены в C.

Там некоторые изменения от а, которые были неправильно объединены непосредственно от а до с, в обход B. (Я использую слово «merged», потому что нам нужно объединить их вручную, потому что автоматическая доставка будет включать в себя множество действий, которые нам не нужно доставлять в B и C).

Чтобы устранить проблему, теперь мне нужно объединить изменения, которые не были объединены в B, но были объединены в C в B, и я ищу способ перечислить все версии в C, которые были созданы слияния с А, так что я могу слил изменения для этих файлов в B.

Благодаря

+0

добавьте некоторые соображения в команду 'findmerge', как было предложено. – VonC

+0

Добавлен комментарий к 'findmerge', по запросу. См. Также http://publib.boulder.ibm.com/infocenter/cchelp/v7r0m0/index.jsp?topic=/com.ibm.rational.clearcase.cc_ref.doc/topics/ct_findmerge.htm для справки. – VonC

ответ

2

список всех версий в C, которые были созданы путем слияния с A

эти версии должны быть включенным в операцию объединения вы должны создать, когда вы слились непосредственно с A на C (используя, возможно, findmerge).

Проблема только в том, что вы создали специальную активность «слияния» за это время findmerge?
Вы можете просто повторно использовали текущую деятельность на C, а это означает, что деятельность будет содержать версии от текущей работы на C, а также версии объединены с А.

Другой подход заключается в том, чтобы объединить те же действия (те обеспокоена findmerge от А до с) от А до В.
следующий «нормальный» слияние с в до с будет:

  • ничего не делать для файлов уже слитую из А (поскольку они также были объединены в B в соответствии с этим «другим подходом»
  • Объединить эволюции от B до C для любых других модификаций d файлов.

Я не использовал его для этих слияниях, сделал это из GUI версии дерева инструмента, создающего одинаковые действия в C для соответствующих мероприятий в А и объединенный файл файлом.

Если у вас есть только один или два файл для слияния, findmerge является команды использовать, потому что:

  • он может учитывающий один или несколько видов деятельности
  • и не связанных одними и теми же «зависимостями действий», чем те, которые выполняются с помощью операции UCM доставки или восстановления.

Короче, findmerge ваша классическая слияние, умеет читать версий в деятельности ЦСМ, но делает не-UCM не сливаются (без гиперссылки между ЦСМ базовых линий).

+0

Спасибо! Эта команда findmerge решает проблему в вопросе, а также выглядит как отличная экономия времени для выборочных операций слияния, которые невозможно выполнить с помощью UCM! – axk

+0

Еще один вопрос: как findmerge определяет, какие версии сливаются? Является ли это простой способ сравнения версий lates в ветке источника с текущими версиями тех же элементов в представлении назначения или это что-то более сложное, связанное с отношениями версии? Возможно ли, что он потребует слияния для двух идентичных версий (тот же элемент с идентичным содержимым)? Благодаря! – axk

+0

, если вы используете 'findmerge' с опцией' fcset', вы укажете имя активности. 'findmerge' будет использовать только точные версии, перечисленные в каждом действии. См. Также http://www-01.ibm.com/support/docview.wss?uid=swg27012941&aid=2 – VonC