В настоящее время я пытаюсь перенести репозиторий SVN в несколько репозиториев Git. Исходное репозиторий SVN можно интерпретировать как монорепозиторий, поскольку в нем представлены несколько независимых проектов. Из-за тегов Git я хотел бы разбить этот монорепозиторий SVN на монорепозиторий Git и несколько репозиториев c для конкретного проекта. Вот мой сценарий:
У меня есть вызов Git монорепозитория Libraries
. Этот монорепозиторий содержит несколько отдельных файловых библиотек, которые относительно независимы друг от друга и, следовательно, должны быть помечены отдельно. Думайте об этом примерно так:
Libraries
math.h
math.c
file.h
file.c
...
Поскольку я считаю это монорепозиторием, я помечу его следующим образом:
math/1.0.0
math/1.1.0
file/1.0.0
file/1.1.0
Теперь перейдем к конкретным проектам c репозиториев.
У меня есть репо под названием Project 1
, которое должно ссылаться на отдельные файлы из репозитория Libraries
. Что еще больше усложняет ситуацию, мне нужно вставить эти файлы библиотеки в определенные каталоги c внутри Project 1
. Что-то вроде следующего:
Project 1
headers
math.h // from math/1.0.0
file.h // from file/1.1.0
project.h // project specific file
source
math.c // from math/1.0.0
file.c // from file/1.1.0
project.c // project specific file
Итак, по сути, я хочу, чтобы репозиторий проекта c ссылался на отдельные файлы с тегами из монорепозитория, и мне нужно разместить их в очень определенных каталогах c в конкретном проекте. c репо.
Могу ли я добиться этого с помощью подмодулей?