I wrote the below script to push all the changes in the workspace, both in the submodules and the superproject. However, it sounds a little odd that, it is this complex to do wh
git1.7.11 ([ANNOUNCE] Git 1.7.11.rc1) mentions:
"git push --recurse-submodules" learned to optionally look into the histories of submodules bound to the superproject and push them out.
So you can use:
git push --recurse-submodules=on-demand