【问题标题】:How does git know which commit to check a submodule out at?git 如何知道在哪个提交处检查子模块?
【发布时间】:2014-04-25 12:31:06
【问题描述】:

我已经克隆了一个包含子模块的 repo。我知道运行 git submodule init 会将子模块的引用插入到 .git/config 中,并且运行 git submodule update 会将文件从子模块(因为它位于提交 3ab4ef2)拉到我的主仓库中......

现在我在 Windows 上,不能使用 grep,所以我无法弄清楚我的主 git 存储库是如何知道它与提交 ​​3ab4ef2 相关联的。

在我的主仓库中哪里可以找到对该提交的引用?

【问题讨论】:

    标签: git git-submodules


    【解决方案1】:

    子模块的提交哈希存储在树对象中。您可以通过运行git ls-tree -r HEAD^{tree} | less 并搜索您的子模块所在的目录来找到它。

    【讨论】:

    • 或从this answer 使用git log --oneline -p -- sub 搜索添加子模块sub 的提交
    猜你喜欢
    • 2014-01-06
    • 2013-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 2018-04-23
    • 2012-06-06
    • 2022-08-14
    相关资源
    最近更新 更多