Как я могу ссылаться на файл Git monorepo из другого Git репо? - PullRequest
1 голос
/ 08 июля 2020

В настоящее время я пытаюсь перенести репозиторий 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 репо.

Могу ли я добиться этого с помощью подмодулей?

1 Ответ

1 голос
/ 09 июля 2020

Подмодуль всегда означает подпапку в родительском репозитории.

Если ваша ОС поддерживает его, вы можете указать версии символических ссылок для этих файлов между:

  • указанными c папки
  • папка подмодуля библиотеки.

Предполагается, что у вас нет слишком многих из этих файлов для символической ссылки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...