Ignore Files 忽略文件 ¶
概述 ¶
Cursor 会读取并索引您项目的代码库,以支持其各种功能。您可以通过在项目根目录添加 .cursorignore 文件来控制Cursor可以访问的目录和文件。
Cursor 会尽力阻止对 .cursorignore 中列出的文件的访问,具体包括以下功能:
全局忽略文件 ¶
您可以通过用户级设置定义适用于所有项目的忽略模式。这可以防止在提示中出现无关或敏感的文件(如构建输出或密钥),而无需为每个项目单独配置。
配置原因:通常有以下两个主要原因促使您配置Cursor忽略代码库的某些部分:
安全性 ¶
尽管您的代码库不会永久存储在Cursor的服务器或为其功能提供支持的大型语言模型(LLM)上,但出于安全考虑,您可能仍希望限制对某些文件的访问,例如包含API密钥、数据库凭据和其他敏感信息的文件。
注意:Cursor会尽力阻止对忽略文件的访问,但由于LLM行为的不可预测性,我们无法保证这些文件永远不会被暴露。
性能 ¶
如果您在一个单体仓库(monorepo)或非常大的代码库中工作,其中大部分内容与您正在开发的代码无关,您可以考虑配置Cursor忽略这些部分。
通过排除无关的代码库部分,Cursor可以更快地索引大型代码库,并在搜索上下文时更快速、准确地找到相关文件。Cursor设计用于支持大型代码库,并擅长评估文件相关性,但对于特别庞大或包含与开发无关文件的代码库,忽略功能尤为有用。
配置 .cursorignore ¶
要实现Cursor的忽略功能,请在代码库根目录中添加一个 .cursorignore 文件,并列出需要忽略的目录和文件。
.cursorignore 文件使用的模式匹配语法与 .gitignore 文件完全相同。
层级忽略 ¶
默认情况下,Cursor仅在当前工作区查找 .cursorignore 文件。如果在 Cursor设置 > 功能 > 编辑器 > 层级Cursor忽略 中启用此选项,Cursor会向上搜索整个文件树以查找 .cursorignore 文件,从而允许在嵌套项目目录中进行更灵活的配置。
基本模式示例 ¶
(文档中未提供具体示例,但语法与 .gitignore 一致,例如:node_modules/ 或 *.log)
高级模式示例 ¶
(文档中未提供具体示例,但可参考 .gitignore 的高级用法,如通配符和否定模式)
注意事项 ¶
- 空行将被忽略。
- 以
#开头的行被视为注释并忽略。 - 模式是相对于
.cursorignore文件位置进行匹配的。 - 后续列出的模式会覆盖文件中较早列出的冲突模式。
使用 .cursorindexingignore 限制索引 ¶
如果您只想限制索引功能,可以在代码库根目录添加一个 .cursorindexingignore 文件,并列出需要从索引中排除的目录和文件。
在 .cursorindexingignore 中列出的文件不会包含在Cursor的索引中,但仍可被Cursor的AI辅助功能访问,包括在Cursor搜索代码库并将其暴露给LLM时。
默认忽略的文件 ¶
Cursor 还会默认忽略以下文件:
- 根目录中
.gitignore文件中列出的所有文件。 - 默认忽略列表中的文件(文档中未具体列出)。
如果您不希望忽略这些文件中列出的某个文件,可以在 .cursorignore 文件中以 ! 前缀添加该文件路径。
故障排除 ¶
如果您的忽略文件出现问题,可以尝试使用 git check-ignore -v [文件路径] 命令测试模式是否正确应用。