Probably very silly question, - but I\'ve been specifying submodules up until now in .gitmodules file. It recently struck me that perhaps it\'s possible to just use .git/config
Same answer than .git/info/exclude
and .gitignore
.
The .gitmodules
file can be included in the repository and shared with everyone (that is, it can be added and committed like any regular file), whereas anything in .git
(like .git/config
) is private (you cannot add it in the repository).
The git submodule sync
will update your config file with the details from the .gitmodules file, so the latter should be considered the 'master' - it's passed between repos as stated by @Artefact2.
This is useful when submodule URLs change upstream and you need to update your local repositories accordingly.