如何让Sublime Text 3识别.gitignore配置并在查找时生效?
让Sublime Text 3遵循.gitignore规则的实用方法
我来给你梳理几个亲测有效的方案,彻底解决Ctrl+P(文件夹内找文件)和Ctrl+F(内容查找)时出现.gitignore中指定文件的问题:
方法一:用插件自动同步.gitignore(最省心)
这是我首推的方式,不用手动维护规则,插件会自动读取项目里的.gitignore并同步到Sublime的排除列表:
- 打开Package Control:按下
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac),输入Install Package回车。 - 搜索并安装
Git Ignore插件,安装完成后重启Sublime。 - 打开你的项目文件夹(一定要通过
File > Open Folder打开整个项目,而不是单独打开几个文件),插件会自动扫描根目录的.gitignore,把规则同步进去。 - 要是没自动生效,可以按
Ctrl+Shift+P输入Git Ignore: Update Project Rules手动触发一次同步。
方法二:手动配置Sublime排除规则(适合不想装插件的同学)
如果不想依赖插件,直接手动把.gitignore的规则复制到Sublime的用户设置里就行:
- 打开Sublime的用户设置:点击
Preferences > Settings(Windows/Linux)或Sublime Text > Settings(Mac)。 - 在右侧的用户设置面板中,找到
file_exclude_patterns(排除文件)和folder_exclude_patterns(排除文件夹)这两个选项,把.gitignore里的对应规则加进去。举个例子:
"file_exclude_patterns": [ "*.log", ".DS_Store", "package-lock.json" ], "folder_exclude_patterns": [ "node_modules", "dist", ".git" ]
注意:文件夹规则不要加末尾的斜杠,Sublime的规则里不需要这个。
- 保存设置后重启Sublime,规则就生效了。
排查之前方案不生效的常见原因
你说之前尝试的方案没效果,大概率是这几个细节没注意:
- 没打开整个项目文件夹:Sublime的Ctrl+P默认只搜索当前打开的文件,必须通过
File > Open Folder把项目根目录导入,它才会读取项目级的排除规则。 - .gitignore的位置不对:Sublime(包括插件)只会识别项目根目录下的.gitignore,如果你的.gitignore在子文件夹里,插件是读不到的,记得移到根目录。
- 插件没正确激活:有些插件需要手动触发同步,比如上面提到的
Git Ignore: Update Project Rules命令,不妨手动执行一次试试。
额外实用技巧
- 临时查看被排除的文件:如果偶尔需要找被.gitignore排除的文件,在Ctrl+P搜索时加
!前缀,比如输入!*.log就能看到所有被排除的log文件。 - 项目级单独配置:如果只想让规则对当前项目生效,不想影响全局设置,可以点击
Project > Edit Project,在项目配置文件里添加file_exclude_patterns和folder_exclude_patterns,这样其他项目不受影响。
内容的提问来源于stack exchange,提问作者Nishant
相关产品推荐
相关产品推荐

