2009-03-26 2 views
1

В потоке интеграции Int, A1, A2, A3 - действия, B1 - базовая линия, которая включает в себя действия A1, A2, A3.ClearCase: создание новой базовой линии со старыми исходными действиями

(Int Stream) ----- A1 ------ A2 ------------------ A3 ------ [B1] - --------------->

Мы собираемся развернуть новую версию программного обеспечения, и наш руководитель проекта сказал, что он не хочет включить набор изменений активности A2 в эту версию программного обеспечения ,

Можно ли создать новую базовую линию B2, которая включает только операции A1 и A3 в ClearCase?

(Int Stream) ----- A1 ------------------------ A3 ------ [B2] - -------------->?

+0

Добавлен комментарий к «зависимости активности» по запросу – VonC

ответ

1

No: Поскольку существует B1, все действия «связаны» общей «временной шкалой», и ClearCase попросит вас также включить A2.

Возможным решением было бы создать вложенную поток и сделать findmerge с только A1 и A3
findmerge не является ЦСМ слияния, которые могут еще взять перечень видов деятельности ЦСМ в качестве входных данных)

Базовая базовая база субпотока должна быть последней базой (произведенной на IntStream) не включая A1, A2 и A3.

Тогда:

ct findmerge activity:[email protected]\pvob activity:[email protected]\pvob -fcsets -c "report for delivery" -merge -gmerge 

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

Родитель поток (IntStream) происходит в его роли интеграции всех усилий в области развития (исходя из других подпотоками)


Примечание:

  • «pvob» предназначается, чтобы быть замените имя вашего проекта vob (vob, содержащий все данные UCM, такие как проекты, потоки, исходные данные, виды деятельности, ...)
  • "ct" означает "cleartool": это alias (Unix) или doskey (версия для Windows псевдонима: doskey ct=cleartool $*)

активность зависимость: A3 может в этом случае есть несколько версий, основанных на версии A2.

findmerge команда использует только мероприятия для их changeset (список версий), которые будут объединены:

Каждая версия перечисленных в наборе изменений становится из-версии в операции слияния. Как всегда, версия для вас - это то, что вам нравится.

A3, включая изменения, сделанные в A2, конечный результат будет включать в себя A1, A2 и A3 изменения, за исключением, если изменения А1 и А3 являются «одновременно» (изменения на подобных линий): в этом случае, нетривиальным необходимо выполнить слияние.


Поскольку вы не хотите изменений, A2, вам нужно, как вы упомянули в комментариях, чтобы завершить эту findmerge операции с PERL утилиты сценарием cset.pl:

ccperl cset.pl -undo A2 

Он будет выполнять «негативный merge "(или" substractive merge "), удаляя любые изменения для A2.

+0

Да, я пробовал и работал. Большое спасибо. Вы гораздо более полезны, чем офис IBM Turkey :) – mcaaltuntas

+0

Добро пожаловать. Рад, что это работает для вас. – VonC

+0

например, у меня есть файл типа Tree.txt. в A1 Activity Я добавил 3 строки кода в Tree.txt, в A2-активности я добавил 2 строки в один файл и A3 добавил 5 строк кода. Когда я пытаюсь выполнить «findmerge A1 A3», как показано выше, файл Merged Tree.txt включает строки, которые я добавил с помощью A1, A2, A3.? – mcaaltuntas