如果我使用这样的工作流程:
我是否刚刚失去了检查历史性的 app2_repo SHA的能力,并且使用 library_repo 的相关历史提交正确更新了“子模块更新”,因为我删除了< strong> library_feature 它们所在的分支,或者所有相关提交仍然存在,因为历史现在与 master 共享,现在它已合并?
答案 0 :(得分:3)
所有相关的提交仍然存在。
当您使用特定版本的子模块创建提交时,存储在“超级模块”树中的唯一信息是子模块应该位于的提交的对象名称(即SHA1sum)。因此,一旦将分支合并到master中就删除它将没有区别 - 超模块中的所有旧提交都将指向仍在子模块的master历史中的提交的对象名称。
如果你删除了一个未合并到其他分支的分支,那么该分支上的未合并提交最终将被垃圾收集,这可能会产生你担心的问题,但你在这里明确说过在删除分支之前,所有内容都已合并。