Git submodules позволяют встроить один Git-репозиторий внутри другого в виде подпапки — это полезно для включения общих библиотек или зависимостей в виде отдельных репозиториев. Они мощные, но имеют репутацию сложных в использовании, поэтому их понимание и знание альтернатив ценно.
Что такое submodules
A SUBMODULE is a reference to ANOTHER Git repository at a SPECIFIC COMMIT, embedded in
your repo as a subdirectory:
→ the parent repo records WHICH repo and WHICH commit (a pinned reference, not a copy)
→ the submodule is its own repo with its own history
→ Used to include shared libraries/components that are themselves versioned repos.
git submodule add <url> path/to/lib
git --recurse-submodules <url>
git submodule update --init --recursive
git submodule update --remote
