Использование двух репозиториев git в одной папке
Вот сцена: я сейчас работаю над собственной структурой и над сайтом клиента. Вот структура:
.
..
_application
_framework
_public
Я хотел бы иметь репозиторий с _framework/* _public/index.php и структурой _application (пустые папки для _controllers _models и _views) на github. Также я хотел бы иметь репо, содержащее ВСЕ это локально.
Я понял, что с помощью git-модулей я мог бы это сделать, но, посмотрев несколько уроков, я все еще не понимаю, как это сделать.
Может ли кто-нибудь объяснить мне немного больше? Большое спасибо!
1 ответ
Мне кажется, что вы можете определить по одному репо для каждой структуры и объединить их в суперпроект через субмодули.
Посмотрите этот вопрос для некоторых деталей о природе подмодулей.
Выдержка:
Подмодуль позволяет вам разрабатывать компонентный подход, где основной проект ссылается только на конкретные коммиты других компонентов (здесь "другие репозитории Git, объявленные как субмодули").
Подмодуль - это маркер (фиксация) в другом Git-репозитории, который не связан основным циклом разработки проекта: он ("другое" Git-репо) может развиваться независимо. Основной проект должен выбрать из этого репо то, что ему нужно.
Однако, если вы хотите, из-за удобства, изменить один из этих подмодулей непосредственно из вашего основного проекта, Git позволяет вам сделать это, при условии, что вы сначала опубликуете эти изменения подмодуля в его исходном репозитории Git, а затем зафиксируете ваш основной проект, ссылаясь на новая версия указанного субмодуля.
Но основная идея остается: ссылки на конкретные компоненты, которые:
- имеют свой жизненный цикл
- иметь свой собственный набор тегов
- имеют собственное развитие
Список конкретных коммитов, на которые вы ссылаетесь в своем основном проекте, определяет вашу конфигурацию (это то, чем занимается Configuration Management, включая простую систему контроля версий)
Так что, если у вас действительно есть две структуры, которые могут развиваться независимо друг от друга, подмодули хорошо подойдут.