给定标记的git子模块状态

时间:2018-04-27 14:16:14

标签: git

如何在给定标记的情况下查看给定GIT存储库的git子模块的列表(以及版本/标记/最后提交ID)?

让我解释一下:

回购有2个标签:

[user@host foobar] (master) $ git tag
v1.0
v1.1

头部距离v1.1 3:

[user@host foobar] (master) $ git describe
v1.1-3-gbcaa726

主存储库包含4个子模块:

[user@host foobar] (master) $ git submodule
51d91a79df12d356e2297e6d84fce92dac3ccedc roles/apache (heads/master)
4574dd38b0fce4aba68fcdea0deeed9dbe4872c3 roles/network (v1.0-1-g4574dd3)
f5a4c1ac9dfab903a2271d5036dd350f889e4f26 roles/rabbitmq (heads/master)
e6781120999aa036539955606d7d98f39bb450a5 roles/jboss-eap (heads/master)

“git submodule”命令显示每个子模块的最后一次提交。

我需要做的是像

[user@host foobar] (master) $ git submodule --tag v.1.0

用于在标记v.1.0时打印子模块的提交ID

这可能吗?

1 个答案:

答案 0 :(得分:0)

如果子模块没有嵌套子模块,或者你不关心它,你可以运行npm install -g chromedriver来打印v1.0的子模块的提交ID。通过这种方法,您不需要签出标签。

如果您不介意检查标签,可以尝试:

git ls-tree -r -t v1.0 | grep ^160000