关于git子模块的小问题。
假设我有一个projectA
,它有一个子模块,可能叫moduleA
。
然后我在projectA
,tagA
中创建了一个标记,然后我可能会对projectA
或moduleA
进行一些新的提交,然后我想回去tagA
,使用git checkout tagA
。
问题是projectA
返回tagA
,但moduleA
没有。
你知道怎么做到这个吗?
答案 0 :(得分:2)
只需更新您的子模块,然后返回父回购中的tagA
:
git submodule update
更新已注册的子模块,即克隆丢失的子模块并检查包含存储库的索引中指定的提交。
像往常一样,子模块的结果repo将处于分离的HEAD模式
请注意projectA
(with a checkout of a tag) will also be in a detached HEAD mode.
标记引用父rpeo内容,包括指向子模块特定SHA1的 gitlink (父代表的special entry in the index)。