谨慎!刚刚通过在父级上签出丢失了嵌套的子存储库



直到最近,我还有这个文件结构:

-Repo A
 |- .git
 |- files
 |- Repo B
    |- .git
    |- files

然后我随便在 Repo A 上查看了另一个分支(只是在 Mac 版 Github 中切换了分支),立即切换回来,瞧:

-Repo A
 |- .git
 |- files
 |- Repo B

回购 B 在那里,但空了!甚至没有 .git 目录!

没有遥控器,并且有2周的3D建模。

具有讽刺意味的是,我的第一个3D模型(在所有这些之前)已经损坏,所以我想我会使用git并定期提交。所以我做到了...

嵌套

的 git 存储库仅记录为 gitlink,即主存储库索引中的特殊条目。

当您签出回原始分支时,Git 会恢复 gitlink,但不知道 SHA1 来自哪个存储库。

若要同时保留 SHA1 内容,需要将存储库B声明为子模块
然后,您将在主存储库A中拥有一个.gitmodules文件,该文件将保留存储库B远程源URL的记录。

最新更新