vs code 默认隐藏 .git 文件夹是因 files.exclude 规则主动过滤,只需删除或注释 "**/.git": true 并保存即可实时显示;工作区设置优先级高于用户设置,且 git worktree 中的 .git 是文件而非文件夹,不受目录隐藏规则影响。

VS Code 默认不显示 .git 文件夹,不是它不存在,而是被 files.exclude 规则主动过滤掉了。 你不需要改系统隐藏属性,也不用重启编辑器,只需调整一个设置项即可实时生效。
修改 files.exclude 配置项
VS Code 的资源管理器是否显示 .git,完全由用户或工作区的 files.exclude 控制。这个配置默认包含 "**/.git": true 或类似条目(如 ".git/**": true),导致整个目录被隐藏。
- 打开设置:快捷键
Ctrl + ,(Windows/Linux)或⌘ + ,(macOS) - 在搜索框输入
files.exclude - 找到对应设置项,点击右侧的“在 settings.json 中编辑”链接
- 在打开的 JSON 中,删掉或注释掉含
.git的行,例如:{<br> "files.exclude": {<br> // "**/.git": true,<br> "**/node_modules": true<br> }<br>} - 保存文件,资源管理器立刻刷新,
.git文件夹就会出现
区分用户设置和工作区设置
你改的是全局用户设置,还是当前项目的 .vscode/settings.json,效果不同:
监控一个或多个 GitCode 仓库的 PR,通过 OpenClaw Gateway 自动执行 AI 审查,发布 PR 评论,并发送钉钉和企业微信通知。
- 用户设置修改后,所有项目都会显示
.git(除非被工作区设置覆盖) - 工作区设置只影响当前项目,适合多人协作时保持一致——比如团队约定不显示
.git,但你想临时调试,就只在本地.vscode/settings.json里删掉那行 - 如果两个地方都定义了
files.exclude,工作区设置会完全覆盖用户设置,不会合并
注意 .git 是文件还是文件夹?
如果你用了 git worktree,在辅助工作区里看到的 .git 很可能是个文件(内容是 gitdir: /path/to/main/.git/worktrees/xxx),而不是文件夹。这种情况下,即使你放开 files.exclude,它也会正常显示——因为它是普通文件,不触发目录级隐藏规则。
真正的主工作区 .git 才是文件夹;而每个 worktree 目录下的 .git 是指向它的符号链接文件。这点容易误判“为什么有的 .git 显示了,有的没显示”,其实不是设置问题,是 Git 自身结构使然。










