Сохранить историю из Clearcase в Git?
В моей компании мы полностью переходим с ClearCase UCM на Git. Мы не будем использовать Clearcase через некоторое время, используя Git.
На переходном этапе, есть ли хорошие инструменты, которые каким-то образом перенесут историю из ClearCase в Git?
Кроме того, я много читал, что один компонент = один репо. Однако мы хотим реорганизовать и разделить текущий компонент на более мелкие части. (Человек, который настроил ClearCase, на самом деле не планировал заранее.) Есть ли способ сделать это?
Будем благодарны за любые комментарии, в том числе ответы и другие вещи, на которые следует обратить внимание во время перехода.
3 ответа
По крайней мере, с ClearCase UCM у вас есть полные базовые показатели для работы, то есть метки, которые установлены для всех файлов данного компонента.
Опыт показывает, что вы никогда не импортируете полную историю из ClearCase в инструмент управления версиями, основанный на ревизии через референцию (см. Разницу между ClearCase и Git: у ClearCase есть набор истории, файл за файлом, а не "ревизия за ревизией")
Что я обычно делаю, как я упоминаю в своем ответе " Синхронизация GIT и ClearCase ":
- одно Git-репо на компонент UCM
- импортировать только последние 3 или 4 базовых уровня для потока интеграции
- импортировать несколько базовых линий из подпотоков, только если это действительно необходимо
- Заблокируйте vob UCM и сохраняйте ClearCase в режиме только для чтения для архива
Я бы не стал сразу уходить в отставку. То, что вы хотите сделать, это зафиксировать подсказки любых веток в понятном кейсе и любых тегов. Это должно быть сделано способом, который отражает то, что произошло в ясном случае (сохранить логические точки ветвления и т. Д.). Используйте git с этого момента. Обратитесь к ясному делу, если вам нужно копаться в истории. В конце концов заархивируйте чистый кейс и восстановите его только в том случае, если у вас возникли какие-то старые коммиты. Импортирование старой истории не стоит хлопот в моем опыте. Это часто очень много времени и ошибок.
Попробуйте этот инструмент для импорта истории из ClearCase в git: https://github.com/charleso/git-cc
Что касается реорганизации репозиториев при переходе с ClearCase на git, было мало обсуждений SO, например, такого: Sync GIT и ClearCase