Как удалить базовую линию из прозрачного потока? - PullRequest
1 голос
/ 15 января 2020

У меня проблема с Clearcase. Я заранее извиняюсь, если я неясен или излишен, так как я довольно новичок в этой VCS, в основном из Git фона, я, возможно, не знаю, как правильно искать мои проблемы.

У нас есть новая версия (не относится к CC, для бизнеса) приложения каждые несколько месяцев, и мы каждый раз создаем новый VOB и поток для каждой версии. У нас есть общий поток c, в котором мы доставляем последние базовые показатели из готовой версии, добавляем новый базовый уровень, а затем экспортируем содержимое общего потока c в новый VOB и поток.

My проблема в том, что, будучи поспешным, я фактически доставил в общий поток c, не последний базовый уровень, а предыдущий. И в довершение всего, я добавил совершенно новую базовую линию в поток c.

Мне нужно иметь возможность доставлять в мой поток c, самый последний базовый уровень из нашей предыдущей бизнес-версии приложения.

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

Для этого я попытался:

  • Удалить действие доставки. Но при попытке сделать это возникает ошибка: «Ошибка: невозможно удалить действие с версиями в его наборе изменений». Я пытался обойти это, помогая себе с Google, но не смог сделать это. Я боюсь, что это нормальное поведение Clearcase, и я не могу продолжать этот путь.
  • Правильно выполнить повторную доставку нашей последней бизнес-версии, но она не сработала из-за моей недавно созданной базы данных в потоке generi c.

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

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 16 января 2020

Если базовая линия, созданная вами в этом потоке, является самой последней базовой линией, и еще не использовалась другим потоком (либо извлечена в ребазе, либо доставлена ​​в другой поток), вы сможете просто удалить ее.

В любом случае, поскольку ваш план состоит в том, чтобы двигаться вперед, предоставляя более позднюю базовую линию, созданную в том же родительском потоке, в этот поток «generi c», вы можете просто поставить правильную базовую линию для этого потока, сделать новая базовая линия и, при необходимости, блокировка предыдущей базовой линии.

Несколько ошибок UCM, о которых вы, возможно, захотите знать:

  • Если вы доставляете базовую линию в другой поток, исходная базовая линия навсегда несменяем.
  • ALL Операции доставки обеспечивают базовые показатели. Если вы не создадите базовую линию, операция доставки создает базовую линию "поставки" для доставки.
  • Удаление потоков является нетривиальным или невозможным.
  • Удаление проектов, в которых выполнялась работа по разработке сделать обычно невозможно.

Для дальнейшего использования, чтобы удалить действие, которое НЕ находится в базовой линии:

  • Опишите действие в командной строке, чтобы получить список версии. Вы можете перенаправить вывод в файл, чтобы вам было проще скопировать и вставить информацию о версии в следующий шаг. Чтобы описать действие, вам нужно использовать " cleartool Описание действия: {id} @ {тег VOB проекта} "
  • Удалить все версии в наборе изменений с помощью " cleartool rmver -xhlink {идентификатор версии}"
  • Удалить действие. Так как доставка, по-видимому, завершена, действие не должно быть установлено.
1 голос
/ 16 января 2020

Проще:

  • доставить генерическому потоку c нужный контент (поверх неправильного) и установить новую базовую линию
  • переименовать предыдущий базовая линия в имя «НЕ ИСПОЛЬЗОВАТЬ»
  • блокировка cleartool - устаревшая базовая линия, чтобы сделать ее невидимой (а не пытаться удалить ее)

Таким образом, вы можете возобновить последовательные поставки / импорт каждого выпуска и забыть о неправильных.

...