Очистить регистр для перехода на SVN

Мы планируем перенести версию наших проектов, контролируемую прозрачным регистром, в SVN. И я попробовал SVNImporter, предоставляемый Polarion. Это нормально для небольшой миграции vob. Но когда vob больше (200 МБ), я получаю ошибку кучи из памяти (я установил -Xmx = 1024m), и этот процесс выполняется медленно.

У кого-нибудь есть некоторый опыт перехода с CC на SVN и известны некоторые другие инструменты с открытым исходным кодом, которые будут работать для больших vobs-сообщений с прозрачным регистром? Любые предложения / лучшие практики, которыми вы можете поделиться, будут очень признательны.

Обновление: нам нужна история файлов, ветка, тег на чистом случае


person Kuku    schedule 09.07.2014    source источник
comment
вы можете переносить каталог по одному, а не все сразу.   -  person Ved    schedule 09.07.2014
comment
@Ved могут быть ручные каталоги внутри нашего чистого каталога просмотра дела.   -  person Kuku    schedule 09.07.2014
comment
Вы должны немедленно взять в каталог не все дочерние узлы. Это примерно похоже на то, что написано в ответе.   -  person Ved    schedule 09.07.2014


Ответы (2)


Единственный обходной путь - попытаться сделать импорт инкрементным с помощью SVNImporter.

Например, импортируйте только часть cc2svn dumped vob (вверху подпапок, что полезно, если эти папки представляют собой компонент): одним репозиторием svn на компонент легче управлять (и импортировать), чем гигантским репозиторием svn.

person VonC    schedule 09.07.2014
comment
Вы имели в виду, что когда я запускаю svnimporter, не указывать верхний чистый каталог case в файле конфигурации в качестве источника, а указывать подкаталог один за другим? - person Kuku; 09.07.2014
comment
@ user1311839 да, потому что я не помню, можно ли это сделать на стороне cc2svn, что означает сброс только части ClearCase Vob. - person VonC; 09.07.2014
comment
Я попробую. Кстати, есть ли какие-нибудь другие инструменты с открытым исходным кодом, о которых вы знаете, которые могут быть лучше? - person Kuku; 09.07.2014
comment
@ user1311839 насколько мне известно, нет. Обычно я не переношу полную историю и сохраняю ClearCase vob для доступа только для чтения. - person VonC; 09.07.2014
comment
так что лучше всего хранить историю и данные в чистом случае, проверять последнюю версию в чистом случае и проверять в SVN? - person Kuku; 09.07.2014
comment
@ user1311839 да, по крайней мере, самый удобный. - person VonC; 09.07.2014
comment
Я забыл спросить после переноса одной папки за другой. Как мне тогда слиться вместе? - person Kuku; 22.07.2014
comment
@ user1311839 Если вы используете ClearCase UCM, вы должны создать проект, в который вы добавите все компоненты UCM, которые вы создали из импортированных папок SVN. - person VonC; 22.07.2014
comment
Привет, VonC, мы не используем эту функцию UCM. Что мне делать в этом случае? - person Kuku; 22.07.2014
comment
@ user1311839 просто используйте спецификацию конфигурации, которая выбирает правильные версии для разных папок ваших Vobs. - person VonC; 22.07.2014

Попробуйте этот https://github.com/ghusse/cc2svn

Я выполнил миграцию огромного репо размером ~ 150 ГБ в SVN с помощью вышеуказанного инструмента. Он будет перенесен с историей, но вы получите только измененные файлы в этой конкретной ветке. Итак, вот что я сделал.

  1. Перенес ветки в svn с историей (остались только измененные файлы).
  2. Теперь возьмите полный исходный код всей ветки в Clearcase
  3. Проверьте ветку Migrated в SVN и перезапишите исходные файлы из Clearcase.

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

person John    schedule 21.06.2017