Преобразование многих модулей CVS в один репозиторий SVN - PullRequest
0 голосов
/ 30 сентября 2010

У меня довольно большой CVS-репозиторий, который я хочу преобразовать лишь в несколько репозиториев Subversion. Я был правильно направлен на использование cvs2svn для преобразования и даже дошел до создания моего собственного файла опций. Мне не нужно сохранять теги или ветки, но я хотел бы сохранить историю изменений. Моя проблема в том, что я хочу, чтобы мои модули находились в одной папке соединительных линий, например svn / trunk / module1 и svn / trunk / module2 вместо svn / module1 / trunk и svn / module2 / trunk. Когда я устанавливаю путь в ничего, он выдает ошибку о пустом пути. Есть предложения?

Ответы [ 2 ]

2 голосов
/ 30 сентября 2010

Моя проблема в том, что я хочу, чтобы мои модули находились в одной папке соединительных линий, например svn / trunk / module1 и svn / trunk / module2 вместо svn / module1 / trunk и svn / module2 / trunk.[...] Любые предложения?

Почему бы вам не импортировать структуру такой, какая она есть, и не перемещать вещи позже в хранилище?В конце концов, способность перемещать вещи - одно из величайших преимуществ SVN перед CVS.(Тот факт, что это изменение структуры происходит в истории, фактически можно рассматривать как преимущество .)

0 голосов
/ 03 октября 2010

Самое простое, что нужно сделать, - это сделать копию вашего репозитория CVS, а затем (в копии) переместить каталоги так, как вы хотите, чтобы они оказались в конечном репозитории Subversion. Затем преобразуйте в один проект , указав cvs2svn на соответствующий каталог в переставленном репозитории. E.g.:

mkdir $CVSCOPY/proj
mv $CVSCOPY/path/to/module1 $CVSCOPY/proj/module1
mv $CVSCOPY/another/path/to/module2 $CVSCOPY/proj/module2
cvs2svn [OPTIONS] $CVSCOPY/proj

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

...