I have just run a git diff, and I am getting the following output for all of my approx 10 submodules
diff --git a/.vim/bundle/bufexplorer b/.vim/bundle/bufe
EDIT: This answer (and most of the others) are obsolete; see Devpool's answer instead.
Originally, there were no config options to make "git diff --ignore-submodules" and "git status --ignore-submodules" the global default (but see also Setting git default flags on commands). An alternative is to set a default ignore config option on each individual submodule you want to ignore (for both git diff and git status), either in the .git/config file (local only) or .gitmodules (will be versioned by git). For example:
[submodule "foobar"]
url = git@bitbucket.org:foo/bar.git
ignore = untracked
ignore = untracked to ignore just untracked files, ignore = dirty to also ignore modified files, and ignore = all to ignore also commits.
There's apparently no way to wildcard it for all submodules.