# .clineignore 功能支持

为了帮助您更好地控制Cline可以访问的文件，我们实现了与.gitignore类似的.clineignore功能。这允许您指定Cline**无法**访问或处理的文件和目录。此功能在以下方面非常有用：

* **隐私保护:** 防止Cline访问您工作区中的敏感或私人文件
* **性能优化:** 排除与您的任务无关的大目录或文件，可能提高Cline的效率
* **上下文管理:** 让Cline专注于您项目的相关部分

**如何使用.clineignore**

1. **创建.clineignore文件:** 在您工作区的根目录下（与.vscode文件夹同级，或您在VS Code中打开的顶级文件夹），创建一个名为.clineignore的新文件。
2. **定义忽略模式:** 打开.clineignore文件，并指定要让Cline忽略的文件和目录的模式。语法与.gitignore相同：

   * 每行代表一个模式
   * **支持标准通配符模式:**
     * `*` 匹配零个或多个字符
     * `?` 匹配一个字符
     * `[]` 匹配一系列字符
     * `**` 匹配任何数量的目录及其子目录
   * **目录模式:** 在模式末尾添加`.`以指定目录
   * **反向模式:** 在模式前添加`!`以反转（取消忽略）之前被忽略的模式
   * **注释行:** 以`#`开头的行是注释

   **示例.clineignore文件:**

   Copy

   ```
   # 忽略日志文件
   *.log

   # 忽略整个'node_modules'目录
   node_modules/

   # 忽略'temp'目录及其子目录中的所有文件
   temp/**

   # 不忽略根目录下的'important.log'
   !important.log

   # 忽略子目录中任何名为'secret.txt'的文件
   **/secret.txt
   ```
3. **Cline将遵循您的.clineignore规则:** 一旦您保存.clineignore文件，Cline将自动识别并应用这些规则。
   * **文件访问控制:** Cline将无法使用`read_file`等工具读取被忽略文件的内容。如果您尝试对被忽略文件使用工具，Cline将通知您由于.clineignore设置，访问被阻止。
   * **文件列举:** 当您要求Cline列出目录中的文件（例如使用`list_files`时），被忽略的文件和目录仍将被列出，但它们的名称将附带一个**🔒**符号，表示它们被忽略。这有助于您了解Cline可以和不可以交互的文件。
4. **动态更新:** Cline监视.clineignore文件的更改。如果您修改、创建或删除.clineignore文件，Cline将自动更新其忽略规则，无需重新启动VS Code或扩展。

**总结**

.clineignore文件为控制Cline对您工作区中文件的访问提供了一种强大而灵活的方式，增强了隐私、性能和上下文管理。通过利用熟悉的.gitignore语法，您可以轻松调整Cline的焦点，集中在项目最相关部分。
