如何在许多子模块中执行“git status”

时间:2012-08-20 01:23:57

标签: git status git-submodules

我有一个包含多个子模块的git存储库。当我在父模块中执行git status时,它只显示该级别的更改,我需要cd进入每个子模块并在每个模块中单独执行git status。有没有更好的方法可以让我在顶层执行git status并查看所有子模块的更改?

我的git --version返回:

  

git版本1.7.9.6(Apple Git-31.1)

2 个答案:

答案 0 :(得分:1)

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

您可以将其转换为Git别名,以避免每次都输入它。

答案 1 :(得分:-1)

git对子模块一无所知。它只是将目录树作为一个整体存储库。一个正确安装的git副本,当你运行" git status"它应该显示存储库的所有更改。 但是如果您的子模块属于不同的存储库,则没有官方的方式来显示所有更改。(可能会编写一些脚本)