* Add a git-config aware merge driver and make it the default for .gitmodules
* Attempt a 3-way merge when @git mv@, @git rm@ or @git submodule add@ want to change a .gitmodules file which has unstaged changes
* Add configuration options (global, per repo and per submodule) to set the default of @git push --recurse-submodules@
+* Add a tutorial explaining the different use cases and the configuration settings which suit them.
* Add an option to @git submodule add@ to move the .git directory of a local repository to be added as submodule into the .git/modules directory of the superproject
* Teach @grep@ the @--recursive@ option
* Add means to specify which submodules shall be populated on clone (which I'd like to implement by teaching @git fetch@ to create submodule repos in .git/modules, recursive checkout will then do the rest)