Ветвянная структура при миграции из SVN в GIT

В настоящее время в моей организации мы используем SVN для управления всем нашим кодом. Текущая иерархия, которой мы следуем в SVN,

  • Parent1
    • ветви
      • разработчик
        • project1
        • project2
      • выпуск
        • project1
        • project2
    • теги
    • хобот
  • parent2
    • ветви
      • разработчик
        • project3
        • проекта4
      • выпуск
        • project3
        • проекта4
    • теги
    • хобот

Теперь, перейдя на git, я хотел бы знать, что было бы лучшим способом заменить это в git? «Родительский» уровень – это просто объединение проектов. Его можно опустить. Проекты также могут иметь зависимость. Любые предложения будут оценены

Я бы сделал отдельный репозиторий git для каждого из ваших проектов, так что вы можете иметь отдельные жизненные циклы.

Во-первых, вам нужно сгладить ваши branches/ каталоги. Переименуйте их в svn заранее ( svn mv ^/parent1/branches/developer/project1 ^/parent1/branches/developer_project1 и т. Д., Затем svn rm ^/parent1/branches/developer ).

После этого вы получаете стандартную структуру svn ( /trunk , /branches , /tags ) и можете просто выполнить миграцию. git svn clone распознает указанные имена каталогов (точнее, вы укажете их с -T , -t и -b , включая ваш /parent1 ), и сделайте правильную вещь.