Git在哪里存储子模块的提交的SHA1?

时间:2011-02-17 19:12:37

标签: git git-submodules sha

我知道当你将一个子模块添加到git存储库时,它会跟踪其sha1引用的子模块的特定提交。

我正在尝试找到存储此sha1值的位置。

.gitmodules.git/config文件仅显示子模块的路径,但不显示提交的sha1。

git-submodule(1)引用仅提及gitlink条目,而gitmodules(5)引用也未对此进行任何说明。

1 个答案:

答案 0 :(得分:133)

它直接存储在Git的对象数据库中。子模块所在目录的树对象将具有子模块提交的条目(这就是所谓的“gitlink”)。

如果子模块位于顶级目录中,请尝试执行git ls-tree master <path-to-directory-containing-submodule>(或仅git ls-tree master。)