跳过主要内容
Cline 的多根功能与 VSCode 的多根工作区无缝协作,让您可以在一个工作区中管理多个项目文件夹。
重要提示: 多根工作区目前是实验性功能,具有以下限制:
  • Cline 规则 仅在第一个工作区文件夹中有效
  • 检查点 会自动禁用并显示警告消息
  • 当您返回到单文件夹工作区时,这两个功能都会恢复

什么是多根工作区支持?

Cline 不再局限于一个项目文件夹,它可以读取文件、编写代码并在 VSCode 工作区中的所有文件夹中运行命令。这对于处理单体仓库、微服务或同时处理相关项目非常有用。

工作原理

当您在 VSCode 中打开多个工作区文件夹时,Cline 会自动执行以下操作:
  • 将一个文件夹指定为主工作区(通常是添加的第一个文件夹)
  • 跟踪所有工作区文件夹及其路径
  • 智能地解析跨工作区的文件路径
  • 在每次 API 请求的环境详细信息中显示工作区信息

入门

设置多根工作区

  1. 将文件夹添加到工作区
    • 在 VSCode 中使用 文件 > 将文件夹添加到工作区
    • 或者创建一个包含多个文件夹路径的 .code-workspace 文件
    • 将文件夹拖放到文件资源管理器中
    • 打开新工作区时选择多个文件夹
  2. 开始使用 Cline - Cline 会自动检测所有工作区文件夹并根据需要与之交互。
有关在 VS Code 中设置多根工作区的详细说明,请参阅 Microsoft 的官方指南

技术行为

工作区检测
  • 任务开始时,Cline 会检测所有工作区文件夹
  • 第一个工作区文件夹默认成为主工作区
  • 每个工作区都可以有自己的 VCS(Git、SVN 等)
路径解析
  • 相对路径相对于主工作区解析
  • 您可以使用工作区提示来定位特定工作区:@workspaceName:path/to/file
  • Cline 会尝试智能地确定文件属于哪个工作区
命令执行
  • 命令在适当的工作区上下文中执行
  • 工作目录根据正在访问的文件设置

跨工作区工作

引用特定工作区

您可以在提示中自然地引用不同的工作区
"Read the package.json in my frontend folder and compare it with the backend dependencies"
"Create a shared utility function and update both the client and server to use it"
"Search for TODO comments across all my workspace folders"

工作区提示

使用工作区提示明确引用特定工作区中的文件
@frontend:src/App.tsx
@backend:server.ts
当多个工作区包含同名文件时,此语法有助于 Cline 解决歧义。

常见用例

单体仓库开发

非常适合您在一个仓库中有相关项目时使用
my-app.code-workspace
├── web/          (React frontend)
├── api/          (Node.js backend)
├── mobile/       (React Native)
└── shared/       (Common utilities)
询问 Cline:“更新 web 和移动应用中的 API 端点以匹配新的后端路由”

微服务架构

从一个工作区管理多个服务
services.code-workspace
├── user-service/
├── payment-service/  
├── notifications/
└── infrastructure/

全栈开发

将所有内容放在一起,同时保持分离
fullstack.code-workspace
├── client/       (Frontend)
├── server/       (Backend API)
├── docs/         (Documentation)  
└── deploy/       (Scripts & config)

自动批准集成

多根工作区与 自动批准 配合使用
  • 为工作区文件夹内的操作启用权限
  • 限制工作区外的文件自动批准
  • 为不同的工作区文件夹配置不同的级别

跨工作区操作

Cline 可以完成跨多个工作区的任务
  • 重构:更新跨项目的导入和引用
  • 功能开发:实现需要在多个服务中进行更改的功能
  • 文档:生成引用多个文件夹代码的文档
  • 测试:跨所有工作区构建和运行测试并分析结果
处理大型多根工作区时,请先进入 计划模式,让 Cline 在进行更改之前了解您的项目结构。

最佳实践

组织工作区

  1. 将经常需要协调更改的相关项目分组
  2. 尽可能在工作区之间使用一致的文件夹结构
  3. 清晰地命名文件夹,以便 Cline 能够理解您的项目结构

有效提示与技巧

使用多根工作区时,以下方法效果最佳
  • 在重要时具体说明工作区:“更新后端工作区中的用户模型”
  • 引用关系:“前端使用共享工作区中的 API 类型”
  • 描述跨工作区操作:“此更改需要在 web 和移动应用中都得到体现”
  • 处理大型代码库时限定搜索范围:“仅在前端工作区中搜索 ‘TODO’”
  • 尽可能将大型任务分解为针对特定工作区的操作
  • 考虑从工作区搜索范围中排除大型文件夹,如 node_modules