Как перенести репозиторий CVS с несколькими модулями как единый репозиторий в Gitlab

Я хочу перенести репозитории CVS в Gitlab. У меня есть несколько модулей в репозитории. Мне нужно выполнить миграцию как единый репозиторий в Gitlab со всеми каталогами.

Репозиторий CVS:

    Repository --->  module_1
                     module_2
                     module_3
                     module_4
                     module_5

Мне нужно перенести указанные выше модули в Repository.git как единый репозиторий. Как я могу сделать это, не теряя истории фиксации каждой ветки и тегов?

Примечание: я использовал инструмент cvs2git для переноса этого, но в нем отсутствуют некоторые коммиты из CVS.

Я выполнил следующие шаги для миграции как отдельного модуля, он переносится правильно.

  1. yum install subversion
  2. svn --version
  3. svn co --username = guest --password ="" http://cvs2svn.tigris.org/svn/cvs2svn/trunk cvs2svn-trunk
  4. cd cvs2svn-trunk
  5. mkdir cvs2git-tmp
  6. python cvs2git --blobfile= cvs2git-tmp / git-blob.dat --dumpfile= cvs2git-tmp / git-dump.dat --username = cvs2git / home / cvs / Repositories / module_1 / --fallback-encoding = UTF- 8
  7. git init --bare /root/module_1-cvs2git.git
  8. cd /root/module_1-cvs2git.git/
  9. git fast-import --export-mark =../cvs2svn-trunk/cvs2git-tmp/git-Mark.dat <../ cvs2svn-trunk / cvs2git-tmp / git-blob.dat
  10. git fast-import --import-mark =../cvs2svn-trunk/cvs2git-tmp/git-mark.dat <../ cvs2svn-trunk / cvs2git-tmp / git-dump.dat
  11. git gc --prune = сейчас
  12. cd $ HOME
  13. git clone /root/module_1-cvs2git.git
  14. cd module_1-cvs2git

Я сделал те же шаги и изменил шаг [6], чтобы выполнить миграцию как единое репо, как показано ниже, и завершить миграцию, в которой отсутствовало несколько коммитов, а также добавил еще несколько коммитов с сообщением " Эта фиксация была произведена cvs2svn для создания ветки ".

Это способ миграции как единого репозитория? ИЛИ есть ли другой способ или инструмент для миграции как единого репозитория?

[6]. python cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git /home/cvs/Repositories/ --fallback-encoding=UTF-8

Любой вклад здесь очень ценится.

0 ответов

Другие вопросы по тегам