Вопрос

У меня есть большое количество четких данных, которые необходимо перенести в принудительном порядке.Изменения охватывают большую часть десятилетия, и мне нужно сохранить как можно больше информации о ветках и тегах.Кроме того, мы широко используем символические ссылки, поддерживаемые в явном регистре, но не принудительно.Какие советы или инструменты вы можете предложить, чтобы облегчить эту задачу?

Это было полезно?

Решение

Первый шаг — решить, нужно ли вам перенести все или только определенные версии ключей.Если вы перенесете только важные версии (релизы и основные этапы), вы получите гораздо более простую историю в Perforce, не потеряв при этом ничего важного.После этого ClearCase можно будет сохранить как исторический архив на случай, если он когда-нибудь понадобится.(Если IBM не изменила ситуацию, срок действия лицензий ClearCase не истекает по истечении срока технического обслуживания, вы просто теряете право на новые обновления и исправления, а также доступ к поддержке)

Имейте в виду, что Perforce не поддерживает каталоги контроля версий и не хранит полное дерево версий для каждого элемента — это означает, что соотношение 1:1 с точными результатами будет невозможно.Воссоздать важные снимки — гораздо более достижимая цель;сохранить все может оказаться невозможным, поскольку в Perforce отсутствуют функции, на которые опирается ClearCase.

Чтобы узнать, что говорит Perforce о мирации, посетитеhttp://perforce.com/perforce/ccaseconv.htmlЗдесь объясняются ключевые различия и рассматриваются несколько подходов, которые вы можете использовать.

Другие советы

Начните с поиска в Google "очистить регистр для принудительного преобразования".Затем прочитайте Руководство по преобразованию ClearCase в Perforce.Как только вы перестанете плакать, вам придется решить (1) сколько усилий вы можете себе позволить и (2) что вам действительно нужно уловить в рамках обращения.Вы не получите всего этого, поэтому можете просто сосредоточиться на получении важных ветвей.

Еще одним соображением было бы просто зафиксировать текущее состояние каждой поддерживаемой ветки в виде снимка, импортировать его в Perforce, а затем отключить старый сервер ClearCase, сохранив его в заведомо исправном состоянии на тот день, когда вам понадобится доступ к чему-то из глубокие, темные дни до Perforce...

Остальные ответы устарели.Теперь вы можете импортировать CC->Perforce со множеством опций, а также с сохранением истории.http://www.perforce.com/sites/default/files/pdf/migration-planning-guide-clearcase-to-perforce.pdf

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

Таким образом, если вы не соберете всю информацию о версиях в (большую) базу данных и не отсортируете ее впоследствии, вы получите коммиты, которые бесполезно изучать (за исключением, конечно, истории отдельных файлов).Когда вы (надеюсь) измените свою политику фиксации для фиксации атомарных изменений в принудительном порядке, это будет видно, когда начнется разработка:Предыдущие коммиты просто не имеют никакого смысла в рамках проекта.

Так что вам действительно стоит подумать о том, чтобы оставить позади ясную историю дела.Создание тегов/веток также представляет собой другую проблему, поскольку вам нужны старые конфигурации для ваших старых ветвей.В конце вы получите неправильные имена файлов в старых тегах (так как они не поддерживают dir-версии), поэтому для этого вы будете использовать прозрачный регистр (и это очень сложно получить правильное имя файла для каждой версии файла!).

Последняя проблема, с которой вы столкнетесь:время работы импортера:если у вас большие VOB (например.10 лет, размер 50 ГБ), вам придется несколько дней ждать, пока импортер соберет всю информацию и преобразует ее в красивый блестящий репозиторий perforce.Весь этот день ваша команда разработчиков перестанет работать.

Просто небольшое замечание об одном импорте из ClearCase в Perforce, который я видел.
Как отмечается в Руководство по преобразованию ClearCase в Perforce:

Perforce поддерживает транзакции атомарных изменений;ClearCase этого не делает.

Обратите внимание, что метки часто используются для простого обозначения моментального снимка определенного, легко определяемого набора файлов;это по своей сути легко сделать в Perforce без использования метки благодаря использованию Perforce транзакций атомарных изменений и синтаксиса именования файлов.
Например, состояние всех файлов в //depot/projecta начиная с изменения 42 можно получить с помощью

p4 sync //depot/projecta/...@42

Это означает, что импортированный проект ClearCase был UCM один, поскольку концепция базового уровня тесно связана с концепцией глобального пересмотра.
Импортировались только файлы с базовой версией, остальные версии были отброшены.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top