Ответ 1
Только для записи вы можете клонировать репозиторий git в другом:
Все под вашим каталогом lib будет игнорироваться приложением git repo, потому что указанный каталог lib содержит .git
.
Итак, это сработает, но закрывающий репо не имел понятия:
- ему нужен каталог
lib
из другого репо - ему нужна конкретная ревизия для
lib
для правильной сборки
Это как раз две информации, записанные родительским репо (охватывающим), чтобы ссылаться на submodule.
Это сделано для того, чтобы предоставить вам доступ к фиксированной ревизии другого репо в вашем репо, но, как объясняется в "Истинной природе подмодулей", это не мешает вам локально изменять lib
непосредственно в вашем родительском репо.
(Пока вы сначала вносите изменения в lib
, затем переходите на один уровень назад в родительское репо и фиксируете там также)
Основное преимущество любого участника вашего основного проекта заключается в том, что когда они будут клонировать указанный проект, они будут знать, что они также нуждаются в lib
, если он объявлен как подмодуль (как указано в "Git Контекст рабочего процесса субмодуля" ).