Why do git submodules require manual checkouts and commits?
- From
- skillzero@gmail.com <skillzero@gmail.com>
- Date
- May 16, 2008, 04:16 UTC
- Message-ID
- <2729632a0805152116o3c998324xb401674207dd2e1e@mail.gmail.com>
Why do git submodules require manually committing the submodule itself to each super repository after something in the submodule repository changes? Is there some reason the super repository can't just "link" to the submodules by branch name? It seems that if the .gitsubmodules also specified the branch to use:
[submodule "libfoo"] path = libs/foo url = git://foo.com/git/libfoo.git branch = master
[submodule "libbar"] path = libs/bar url = git://bar.com/git/libbar.git branch = stable
Then a git pull (or git clone) of the super repository could also pull in all submodules. A commit to a file in a submodule would then be automatically reflected in the super repository (since the super repository would always pull HEAD of that branch).
Is this difficult (or somehow undesirable)?