git子模块和“没有分支”

时间:2014-02-26 06:48:36

标签: git

我们假设我们在目录" submod"中有一些git子模块。 现在我正在做这样的命令:

# git submodule update --init submod
# cd submod
# git branch
* (no branch)
master

如果子模块位于目录" submod"有很多分支 - 我如何找到我应该结账的哪一个?我知道git只记得子模块的git哈希而不是分支名称 - 那么如何查找分支名称?

2 个答案:

答案 0 :(得分:2)

分支名称未存储在父资源库中。它只存储提交的哈希值。这是因为分支名称不可靠,并且可能随着时间的推移而改变甚至消失。子模块只会更新到正确的哈希值,因此总是更新为“分离头”状态。

答案 1 :(得分:2)

如何查找我应该查看哪些内容?

您应该能够使用git branch -avvv列出它们。

然后,您可以{/ 3}}目前通过

结帐
git branch -avvv --contain HEAD

你可以选一个。

然后,您可以注册您选择的分支,以便子模块使用从所述分支获取的最新提交更新其HEAD:请参阅“list all the branches which include the commit”。

相关问题