Сохранение истории копий svn при преобразовании в git

Я пытаюсь преобразовать репозиторий SVN в несколько репозиториев git. До сих пор я использовал git svn clone svn_repo_project_pathдля каждого проекта в SVN. Я заметил, что git, похоже, не следует за операциями копирования svn, поэтому полученная история намного короче, чем я ожидаю.Предположим, мой репозиторий SVN выглядел так:

root

  • a
  • b
  • c
  • parent-proj
    • b
    • c

Проекты bи cбыли недавно скопированы в parent-projв рамках усилий по реструктуризации с целью в конечном итоге удалив их из своих старых мест под root. Когда я делаю git svn clone http://svnhost/parent-proj, в результирующем репозитории git отсутствует вся история, возникшая из /bи /c. ] перед переездом.

Является ли это ограничением git-svn или есть способ сделать так, чтобы эта история отображалась в моем репозитории? Из моего ограниченного исследования кажется, что использование команды filter-branch, как описано в Получение полной истории репозитория SVN, который был переименован с помощью git-svn, может работать, хотя в моем случае есть несколько родителей, что, вероятно, усложняет ситуацию. Может ли быть лучше сначала клонировать весь репозиторий, а затем выделить из него новые репозитории (используя filter-branch?)?

6
задан Community 23 May 2017 в 12:15
поделиться