Search code examples
gitstatusgit-submodules

how to perform "git status" across many submodules


I have a git repository with several submodules. When I perform a git status in the parent module it only shows me changes at that level, and I need to cd into each submodule and perform git status separately in each module. Is there a better way of doing this so that I can perform git status at the top level and see the changes across all submodules?

My git --version returns:

git version 1.7.9.6 (Apple Git-31.1)


Solution

  • git submodule foreach --recursive 'git status && echo'
    

    You could turn this into a Git alias to avoid having to type it out each time.