Skip to main content

忽略文件


概述

Cursor(光标编辑器)通过读取和索引项目代码库为其功能提供支持。您可以在根目录添加.cursorignore文件,控制Cursor可访问的目录和文件。

Cursor将尽力阻止访问.cursorignore中列出的文件,包括:

全局忽略文件

现在可通过用户级设置定义适用于所有项目的忽略模式。这样无需为每个项目单独配置,即可在提示中排除干扰性或敏感文件(如构建输出文件或密钥文件)。

配置Cursor忽略代码库部分内容的常见原因有两个:

安全性

虽然您的代码库不会永久存储在Cursor服务器或其功能依赖的LLM(大语言模型)上,但出于安全考虑(如包含API密钥、数据库凭证等敏感信息的文件),您可能仍希望限制对某些文件的访问。

Cursor会尽力阻止访问被忽略的文件,但由于LLM行为的不可预测性,我们无法保证这些文件永远不会被暴露。

性能

如果您在单体仓库或超大型代码库中工作,且其中大部分内容与当前开发代码无关,可考虑配置Cursor忽略应用的这些部分。

通过排除代码库中无关部分,Cursor能更快地索引大型代码库,并在搜索上下文时更快速精准地定位文件。

Cursor设计支持大型代码库,擅长评估文件相关性。但在处理特别庞大的代码库或包含与开发无关的文件时,忽略功能仍非常有用。

配置.cursorignore

要实现Cursor的忽略功能,请在代码库根目录创建.cursorignore文件,并列出需要忽略的目录和文件。

.cursorignore文件使用与.gitignore完全相同的模式匹配语法。

层级化忽略

默认情况下,Cursor仅在当前工作区查找.cursorignore文件。在Cursor设置>功能>编辑器>层级化光标忽略中启用后,Cursor将沿文件树向上递归查找.cursorignore文件,实现嵌套项目目录的灵活配置。

基础模式示例

# 忽略特定文件`config.json`
config.json

# 忽略`dist`目录及其内部所有文件
dist/

# 忽略所有`.log`扩展名文件
*.log

高级模式示例

# 忽略整个代码库
*

# 不忽略`app`目录
!app/

# 忽略任意目录中的logs目录
**/logs

注意事项

  • 空行将被忽略
  • #开头的行视为注释并被忽略
  • 模式匹配基于.cursorignore文件所在位置的相对路径
  • 后列模式将覆盖文件中先前列出的冲突模式

使用.cursorindexingignore限制索引

若仅需在索引时启用忽略功能,请在代码库根目录创建.cursorindexingignore文件,列出需从索引中排除的目录和文件。

.cursorindexingignore中列出的文件不会进入Cursor索引,但仍可通过Cursor的AI辅助功能访问,包括当Cursor搜索代码库并将其暴露给LLM时。

默认忽略文件

Cursor还会自动忽略根目录.gitignore文件及下方默认忽略列表中列出的所有文件。若需取消忽略这些文件中的特定项,请在.cursorignore文件中添加带!前缀的对应条目。

故障排除

排查忽略文件问题时,可使用git check-ignore -v [文件]命令测试模式匹配效果。

365/年

CursorAI编程知识星球

我的cursor教学视频已经超100万人观看,可能是中文互联网最佳了

立即查看800+人已加入
免费

通过Monica免费使用满血可联网DeepSeek R1

Monica接入DeepSeek R1、OpenAI o1、GPT-4o、Claude 3.5 和 Gemini 1.5,来提升您的聊天、搜索、写作和编程体验。

立即查看一站式 AI 助手