Git вложенные репозитории

У меня есть 2 repos, A и B, и я хочу вложить B внутри A (добавьте его как подпапку). Я просто разместил B внутри A, но проблема в том, что когда я делаю какие-либо изменения в репо B, он не добавляется и даже не рассматривается в Reop A.

Какое изменение или модификация следует сделать, чтобы считать его репо?

Учитывая, что репо A является частным, а репо B является публичным в GitHub, это также имеет значение?

Ответ 1

Вы должны реализовать B как submodule.

git submodule add git://yourdomain.com/path/to/B path/to/B

Где git://yourdomain.com/path/to/B - удаленный путь к B.
И path/to/B - это локальный каталог, в который вы хотите поместить его в A.

Затем каждый раз, когда вы клонируете репо A, вам нужно будет сделать git submodule update. И B будет обновлен.

Capistrano управляет им автоматически, если вы определяете :git_enable_submodules как true.