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)? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html