平时用 VS Code 的可视化 Git 版本管理用爽了,特别是当仓库出现一个代码仓库包含多个子代码仓库的时候,这玩意就显得尤为舒服(好吧,主要是我懒的记命令…)

用 VS code 打开项目发现提示:

"demo" 存储库包含17个子模块,这些子模块不会自动打开。您仍然可以通过打开其中的一个文件来单独打开每个文件。

好吧,很久之前就有这个提示了。我一直没咋在意,虽然说我也发现了部分 Git 的子模块不见了,但是一直以来都没怎么关心(因为很少改其他的模块…)

但是今天改了一个模块的代码,当我准备提交代码时发现这模块不见了?于是乎我一个劲的 git submodule init 但是丝毫没有作用,于是我看了看 ./git/modules/ 文件夹,模块是正常的呀?而且吧只有一部分模块不显示在 源代码管理 列表里,如下图所示

解决 VS Code Git 管理中部分子模块 “消失” 问题-天真的小窝

于是乎我以为 VS Code 卡 Bug 了,立即关掉软件重新打开,好家伙依然如此,不过这时候我的目光被上面那条警告吸引了("demo" 存储库包含17个子模块,这些子模块不会自动打开。您仍然可以通过打开其中的一个文件来单独打开每个文件。)

然后就是一顿搜索,发现其实 VS Code 有个设置检测子储存库的数量,默认只有 10 个,打开设置改一下就好了。

在设置中搜索:

git.detectSubmodulesLimit

解决 VS Code Git 管理中部分子模块 “消失” 问题-天真的小窝

修改设置后再使用重启大法换个姿势重新打开一下 VS Code 就好了,这时候你就会发现那些子储存库又神奇的回来了。