Сохранение истории копий svn при конвертации в git
Я пытаюсь преобразовать репозиторий SVN в несколько репозиториев git. До сих пор я использовалgit svn clone svn_repo_project_path
для каждого проекта в SVN. Я заметил, что git, похоже, не выполняет операции копирования svn, поэтому итоговая история намного короче, чем я ожидал. Предположим, что мой репозиторий SVN выглядел так:
Корень
abc Родитель-проектируемыйbc Проектыb
а такжеc
недавно были скопированы подparent-proj
как часть усилий по реструктуризации с целью в конечном итоге удалить их из их старых расположений под root. Когда я делаюgit svn clone http://svnhost/parent-proj
в полученном репозитории git отсутствует вся история, которая произошла от/b
а также/c
до переезда.
Это ограничение git-svn или есть какой-нибудь способ показать эту историю в моем репо? Из моего ограниченного исследования кажется, что использованиеfilter-branch
команда, как описано в Получение полной истории репозитория SVN, который был переименован с помощью git-svn может работать, хотя в моем случае есть несколько родителей, что, вероятно, усложняет ситуацию. Может ли быть лучшим подходом клонирование всего репо, а затем выделение из него новых репо (с использованием filter-branch?)?