Синхронизация GIT и ClearCase
В настоящее время я работаю над ClearCase и теперь перехожу к GIT.
Но нам нужна эта миграция таким образом, что вся работа будет выполнена в GIT, и данные будут синхронизированы с потоком ClearCase. У нас будут одинаковые имена ветвей и имена потоков как в GIT, так и в CC, поэтому скрипты не должны быть проблемой. Проблема здесь:
Может кто-нибудь предложить, какая лучшая модель для синхронизации CC и GIT
-
Имейте все Vobs в CC как единый репо в GIT, и у вас есть основной поток в CC как различные ветки в GIT. - Single GIT repo (VOBS) и много ветвей (CC-потоки). - Это занимает меньше места, поскольку VOB сохраняются как единое репо со многими ветвями.
-
Имеют важные ветки CC как независимые репозитории GIT и каждый репозиторий, имеющий все CC VOB. - Многие репозитории GIT для многих ветвей CC - это займет много места, поскольку VOB будут реплицироваться.
Какой, по вашему мнению, лучший способ синхронизировать его с ClearCase
Ответы
Ответ 1
Имейте все Vobs в CC как единый репо в GIT, и у вас есть основной поток в CC как различные ветки в GIT
Нет и да
Имейте важные ветки CC как независимые репозитории GIT, и каждый репозиторий имеет все CC VOB
Нет и Нет
Перечитав мой ответ о Git ограничениях, вы не должны пытаться втиснуть "все" в GIT Сделки рЕПО.
См. Также "Каковы основные понятия прозрачности, которые должен знать каждый разработчик? для сравнения ClearCase и Git.
Поток можно безопасно импортировать как ветвь.
Но VOB не обязательно являются GIT Repo.
Если вы используете UCM, я бы рекомендовал один репозиторий GIT для компонента UCM.
В любом случае вам нужно записать в свой GIT Repo способ узнать, что ClearCase-просмотр используется для синхронизации (через простой clearfsimport
) ваш данных.
Представление, используемое для повторного импорта данных ClearCase, будет представлением UCM, автоматически связанным с правильным потоком, для правильного VOB.
Примечание. Я упоминаю в как свести GIT к ClearCase?" более простое решение, но которое не импортирует всю историю в GIT репо.
Ответ 2
Хотя я бы не стал предлагать его как "лучший" способ синхронизации двух, вы можете импортировать историю и направить изменения обратно в Clearcase с помощью моего инструмента git -cc, как упомянуто .
Ответ 3
Что касается ветвей и репозиториев, я бы пошел с одним vob == one git режимом repo, так как git repo действительно предназначен для использования одним проектом, так же, как и для vobs.
Как и для ветвей, имена ветвей во всплывающих/репозитариях должны совпадать. Взгляните на подмодули в git, чтобы узнать, можно ли это использовать в вашем случае.
То, что я хотел бы увидеть, - это зрелый бэкенд git -cc, который позволит мне использовать git в своем dev-box, а также синхронизировать с корпоративным репозиторием CC, который я вынужден использовать.