VSCode默认通过"*/.": true规则在files.exclude中主动过滤隐藏文件,需删除该行并关闭重开文件夹生效,同时须同步配置search.exclude。

VSCode 默认不显示以点(.)开头的文件,比如 .env、.git、.vscode,这不是系统隐藏属性导致的,而是它主动用 files.exclude 规则过滤掉了——关掉这个规则,就能让它们“原形毕露”。
删掉 "**/.*": true 这一行
这是最直接有效的操作。VSCode 的隐藏逻辑全靠这条默认规则驱动,删了它,所有点文件立刻在资源管理器里出现。
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS),运行Preferences: Open Workspace Settings (JSON)(优先选这个,工作区设置会覆盖用户设置) - 找到
"files.exclude"对象,定位到"**/.*": true这一行,整行删除或注释掉 - 如果没看到
"files.exclude"字段,就手动加一个空对象:"files.exclude": {},再确保里面没有"**/.*": true - 保存后,必须关闭当前文件夹(
File > Close Folder),再重新打开(File > Open Folder)——只重启 VSCode 或刷新窗口无效
别忘了同步改 search.exclude
你可能发现文件树里能看到 .env 了,但 Ctrl+Shift+F 全局搜索还是搜不到——大概率是 search.exclude 还在起作用。它和 files.exclude 完全独立,得单独处理。
- 同样在 workspace settings JSON 中,检查是否存在
"search.exclude" - 如果里面有
"**/.*": true或"**/.env": true这类规则,删掉或显式设为false - 稳妥起见,可以加一条:
"**/.*": false,避免依赖内置默认值
远程开发(Remote-SSH)要改远端设置
通过 Remote-SSH 连 Linux/macOS 主机时,你在本地改 settings.json 是无效的。VSCode 的资源管理器显示逻辑运行在远程端,配置也得配在远程。
- 连接成功后,按
Ctrl+Shift+P运行Preferences: Open Remote Settings (JSON) - 编辑的是远程主机上的配置(路径类似
~/.vscode-server/data/Machine/settings.json,不可见但生效) - 同样删掉
"**/.*": true,并检查search.exclude - 改完仍需关闭并重开远程文件夹,否则不刷新
最容易被忽略的一点:工作区级 .vscode/settings.json 会完全覆盖用户级设置,很多人改了全局却没效果,就是因为项目里已有自己的 files.exclude。务必先确认你在编辑的是当前工作区的配置,而不是用户设置。


















