Atom全局忽略仅靠core.ignoredNames配置,与.gitignore无关;搜索过滤受core.excludeVcsIgnoredPaths控制(默认开启);树视图隐藏需同时配置tree-view的Hide Ignored Names和hideVcsIgnoredFiles开关。

全局忽略文件靠 core.ignoredNames 配置,不是靠 .gitignore
Atom 的全局忽略规则只认 core.ignoredNames 这个配置项,它和项目级的 .gitignore 完全无关。你删掉 .gitignore 里的 node_modules,core.ignoredNames 里还留着它,Atom 照样会跳过这个目录——搜索、树视图、文件打开都受影响。
修改位置在 Settings > Core > Ignored Names 输入框,默认值类似 [".git", ".DS_Store", ".atom", ".log"]:
- 每个条目必须用英文双引号包裹,逗号后带一个空格,严格 JSON 数组格式
- 写
"node_modules"会匹配同名文件夹;写".log"会匹配所有名为.log的文件(但不匹配error.log) -
"*.log"或"dist/*.js"无效——core.ignoredNames不支持通配符或路径模式 - 改错会导致 Atom 启动失败,保存前建议复制原值备份
core.excludeVcsIgnoredPaths 控制是否尊重 .gitignore
即使你没在 core.ignoredNames 里写 node_modules,只要项目根目录有 .git 文件夹且 core.excludeVcsIgnoredPaths 为 true(默认开启),Atom 就会读取 .gitignore 并跳过其中声明的路径——这仅影响搜索(Ctrl+Shift+F),不影响树视图显示。
这个开关在 Settings > Core 里,叫 Exclude VCS Ignored Paths:
- 勾选 → 搜索时自动过滤
.gitignore中的条目(前提是存在.git目录) - 取消勾选 →
.gitignore彻底失效,搜索结果里会出现node_modules、dist等 - 改完必须重启 Atom,热重载不生效
树视图隐藏逻辑是独立的,得单独关
就算你把 core.ignoredNames 清空了,tree-view 插件默认也不会显示被忽略的文件——它有自己的开关:Hide Ignored Names 和 hideVcsIgnoredFiles。
前者控制 core.ignoredNames 列表里的项是否在侧边栏隐藏,后者控制 .gitignore 里的项是否隐藏:
- Settings > Packages > tree-view > Settings → 勾选
Hide Ignored Names才会让.DS_Store、.atom等消失 -
Hide Vcs Ignored Names(注意名称)决定.gitignore是否影响树视图;它在 UI 里可能不显示,需手动编辑config.cson -
config.cson中加这一段才真正关掉:"tree-view": { "hideVcsIgnoredFiles": false } - 改完
config.cson不用重启,但 tree-view 需要按cmd-\切换或右键 → Reload Tree View
真正容易被忽略的点:两层过滤互不感知
core.ignoredNames 和 tree-view 的两个隐藏开关是完全解耦的。少关任何一个,文件就卡在“能搜到但树里看不到”或“树里有却搜不到”的状态里。比如你只关了 hideVcsIgnoredFiles,但没开 Hide Ignored Names,.DS_Store 还是会出现在树里;反之,只开了 Hide Ignored Names 却没清掉 core.ignoredNames 里的 .DS_Store,它照样被过滤。这两处必须同时确认,缺一不可。











