跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

VSCode设置文件隐藏_隐藏.git与.meta等无关文件

files.exclude是唯一控制侧边栏文件树显示的配置,必须用/开头的glob模式(如/.git)、写入工作区.vscode/settings.json才生效,且需同步配置search.exclude才能避免全局搜索扫到。 files.exclude 配置写对了才生效,不是改完就自动隐藏 VSCode 的
files.exclude
是唯一控制侧边栏文件树是否显示某类文件的配置项,但它**不支持通配符简写、不继承 . git ignore、也不按文件系统隐藏逻辑工作**。常见失效原因不是语法错,而是路径模式没匹配上或被工作区设置覆盖。 关键点:
"**/.git"
必须带开头的
**/
,只写
".git"
或
"/.git"
无法匹配子模块里的
.git
目录
"**/*.meta"
才能隐藏所有层级的
.meta
文件(包括 Unity 项目中每个 asset 旁生成的);
"*.meta"
只匹配顶层 如果项目根目录有
.vscode/settings.json
,它会完全屏蔽用户级设置,必须在该文件里加
files.exclude
修改后无需重启,保存即刻从资源管理器消失——但搜索(Ctrl+Shift+F)仍可能扫到,需同步配
search.exclude
Windows 用户别折腾反斜杠,统一用 / 就行 VSCode 内部路径解析器自动标准化分隔符,无论 Windows 还是 macOS,
files.exclude
中所有 glob 模式都必须用正斜杠
/
。写成
"\.git"
或
"\.meta"
不仅无效,还会导致整个规则被忽略。 正确写法示例:
{ "files.exclude": { "**/.git": true, "**/.svn": true, "**/*.meta": true, "**/.DS_Store": true } }
错误写法(直接失效):
"\.git": true
(转义反斜杠,VSCode 不识别)
"*.meta": true
(漏掉
**/
,只隐藏项目根目录下的 .meta)
"**.git": true
(混用符号,glob 解析失败) search.exclude 要单独配,否则 Ctrl+Shift+F 还是扫出 .meta
files.exclude
只管侧边栏,不影响搜索范围。Unity 或 Unreal 工程里满屏
.meta
文件,光隐藏树形结构没用——搜代码时仍会返回一堆干扰结果。 Git 程序猿必备版本控制工具 下载 必须显式配置
search.exclude
,且规则和
files.exclude
基本一致: 同样要用
"**/*.meta"
,不能省略
**/
可以复用
files.exclude
的大部分条目,比如也加
"**/.git"
避免搜到 Git 内部文件 注意
search.exclude
对
node_modules
默认已启用,但
.meta
不在默认列表里,必须手动加 完整片段参考:
{ "files.exclude": { "**/.git": true, "**/*.meta": true }, "search.exclude": { "**/.git": true, "**/*.meta": true } }
工作区设置优先级最高,别在用户设置里白改 如果你在一个具体项目里改了用户级
settings.json
(全局设置),却发现
.git
还在侧边栏——大概率是该项目根目录下存在
.vscode/settings.json
,且里面没写
files.exclude
,或者写了但值为
false
。 检查顺序永远是:工作区设置 → 用户设置 → 默认值。解决方法只有两个: 删掉项目里的
.vscode/settings.json
(如果不需要其他工作区特有配置) 编辑
.vscode/settings.json
,把
files.exclude
和
search.exclude
显式补全 别指望“全局设置能兜底”——VSCode 的设计就是工作区配置一锤定音。这也是为什么很多人反复修改用户设置却没效果。 实际生效的关键不在语法多炫,而在 **
**/
是否写全、工作区配置是否存在、以及
search.exclude
有没有同步补上**。漏掉任意一点,.git 或 .meta 都会照常出现在你眼前。

相关文章