Git - 查看具有相应哈希值的特定子模块的历史记录

Mat*_*gan 2 git git-submodules

git submodule update --remote在我的存储库上运行,然后在检查回归测试后推送到 master。然而,我的测试没有 100% 的覆盖率,有些东西漏掉了。我想在远程更新之前恢复到我的一个子模块中的先前散列。

两个问题:

  • 如何在远程更新之前获取子模块的先前哈希值?
  • 一旦我得到那个散列,我如何正确地将子模块重置为那个散列?

Poc*_*ets 5

查看之前检出的子模块哈希:

git log --patch master -- path/to/submodule
Run Code Online (Sandbox Code Playgroud)

使用它来确定哪些提交更新了签出的子模块,然后您可以像这样回滚签出的子模块:

git checkout <commit>^ -- path/to/submodule && git submodule update -- path/to/submodule
Run Code Online (Sandbox Code Playgroud)

这将使您的 repo 与旧的子模块检出,并说在暂存区发生变化。