У меня есть git repo, и я хочу добавить к нему подмодуль. Проблема в том, что подмодуль существует как папка внутри другого репо. Можно ли добавить только эту папку в качестве подмодуля?
Как добавить конкретную папку из репозитория git в качестве подмодуля git?
Ответ 1
Если вам действительно необходимо включить часть другого репозитория в историю своего собственного репо, тогда стратегия слияния поддеревьев более адекватна, чем подмодули.
Но в обоих случаях полный репозиторий связан с вашим репозиторием, а не только с одним каталогом.
И частичное клонирование невозможно.
Вы можете попробовать изолировать этот каталог в своем собственном репозитории, а затем добавить его в качестве подмодуля, но это означает, что его история будет полностью отделена от репо, из которого он исходил.
Ответ 2
Я закончил это:
- Создайте каталог
submodules
. - Добавьте подмодуль в этот каталог.
- Создайте символическую ссылку на конкретный каталог внутри подмодуля.
Таким образом, у вас есть поведение подмодуля по умолчанию Git, и в вашем проекте вы используете только подмножество всего подмодуля.
Ответ 3
- Создать новую ветку
- Переместить необходимые файлы в новую ветку
- Добавить субмодуль в супер-репозиторий
- Подмодуль оформления заказа в новую ветку