如何列出git子模块的现有分支(不首先初始化它)?

如何列出git子模块的现有分支(不首先初始化它)?,git,branch,git-submodules,Git,Branch,Git Submodules,我有一个有很多子模块的项目,因为某些特定的原因。我只想知道每个子模块都有哪些分支。我知道我可以用 git submodule update --init 并执行 git ls-remote --heads {URL} 在每个子模块上获取该子模块的当前现有分支(git branch-r还列出了已删除的分支)。但是,由于我们的项目存在许多子模块,上述初始化在第一次运行时需要很多时间。有没有一种方法可以在不初始化子模块的情况下获取现有分支?如“”中所述,您可以直接从.gitmodules文件获取

我有一个有很多子模块的项目,因为某些特定的原因。我只想知道每个子模块都有哪些分支。我知道我可以用

git submodule update --init
并执行

git ls-remote --heads {URL} 
在每个子模块上获取该子模块的当前现有分支(git branch-r还列出了已删除的分支)。但是,由于我们的项目存在许多子模块,上述初始化在第一次运行时需要很多时间。有没有一种方法可以在不初始化子模块的情况下获取现有分支?

如“”中所述,您可以直接从
.gitmodules
文件获取url

grep url .gitmodules | sed 's/.*= //'
一旦提取了url,就可以执行
gitlsremote--heads{url}
,而无需初始化子模块