sublime text 不自动读取 .gitignore,需手动将忽略模式添加到 settings – user 的 folder_exclude_patterns 和 file_exclude_patterns 中,如 "__pycache__"。

Sublime Text 本身不读取 .gitignore 文件,所谓“忽略文件”必须手动配置 folder_exclude_patterns 或 file_exclude_patterns,否则搜索、侧边栏、Goto Anything 全都会照常显示。
怎么让 Sublime 不显示被 .gitignore 忽略的文件
Sublime 没有内置 Git 集成逻辑,不会自动同步 .gitignore。你得把里面的关键模式手动抄进设置里:
-
Preferences → Settings – User中添加或修改"folder_exclude_patterns"和"file_exclude_patterns"两个数组 - 常见值如:
"__pycache__"、、<code>"node_modules"、".DS_Store"—— 注意别加路径前缀,只写 basename - 如果项目级定制,优先改
Project → Edit Project,在"folders"下每个目录加"folder_exclude_patterns"字段,比全局设置更精准
folder_exclude_patterns 和 file_exclude_patterns 的区别
名字看着像,但行为完全不同:
-
folder_exclude_patterns:匹配**文件夹名**(不递归,只作用于一级子目录),比如"build"会隐藏./build/,但不会隐藏./src/build/ -
file_exclude_patterns:匹配**文件名或完整路径中的片段**(支持通配符),比如"*.log"会隐藏所有.log文件,无论在哪层目录 - 两者都不支持正则,只认
*和?;也不支持!取反,没法“排除排除项”
为什么改了设置还是看到被忽略的文件
最常见三个原因:
- 改的是
Settings – Default而不是Settings – User—— 默认设置会被升级覆盖,永远改User - 没重启 Sublime —— 设置是启动时加载的,改完不重启无效(哪怕只是刷新侧边栏也不行)
- 用了符号链接目录,而
folder_exclude_patterns对软链目标不生效 —— 这是 Sublime 的已知限制,只能换用file_exclude_patterns配合路径关键字绕过
真正麻烦的地方在于:Git 忽略规则有层级、有取反、能写注释,而 Sublime 的 exclude 字段只是扁平字符串列表。想完全对齐,得自己解析 .gitignore 再转义——没人真这么干,实用做法就是挑高频项手填,够用就行。










