Skip to main content

并发文件编辑(又名多文件编辑)

在单个操作中编辑多个文件,显著加速重构和多文件更改。


功能说明

批量差异批准界面显示多个文件更改

并发文件编辑允许Roo在单个请求中修改工作区中的多个文件。您无需逐个批准每个文件编辑,而是通过统一的批量批准界面一次性审查和批准所有更改。


为什么使用它

传统方法:需要单独批准的连续文件编辑

  • 编辑文件A → 批准
  • 编辑文件B → 批准
  • 编辑文件C → 批准

使用并发文件编辑:所有更改一起呈现

  • 审查文件A、B和C的所有建议更改
  • 批准一次即可应用所有更改

这减少了中断并加速了复杂任务,如:

  • 跨多个文件重构函数
  • 在整个代码库中更新配置值
  • 重命名组件及其引用
  • 应用一致的格式或样式更改

如何启用

实验性功能

多文件编辑是一个实验性功能,必须在设置中启用。

  1. 打开itBuilder设置(点击itBuilder中的齿轮图标)
  2. 导航到itBuilder > 实验性设置
  3. 启用启用多文件编辑选项
实验性设置中的启用多文件编辑开关

使用功能

启用后,Roo会在适当时自动使用并发编辑。您将看到"批量差异批准"界面,显示:

  • 要修改的所有文件
  • 每个文件的建议更改
  • 批准所有更改或单独审查的选项

示例工作流程

  1. 要求Roo"更新所有API端点以使用新的身份验证方法"
  2. Roo分析您的代码库并识别所有受影响的文件
  3. 您收到单个批量批准请求,显示以下更改:
    • src/api/users.js
    • src/api/products.js
    • src/api/orders.js
    • src/middleware/auth.js
  4. 在统一的差异视图中审查所有更改
  5. 批准以同时应用所有更改

技术细节

此功能利用了apply_diff工具的实验性多文件功能。有关实现、XML格式以及MultiFileSearchReplaceDiffStrategy工作原理的详细信息,请参阅apply_diff文档


最佳实践

何时启用

  • 使用功能强大的AI模型(Claude 3.5 Sonnet、GPT-4等)
  • 习惯一次性审查多个更改

何时保持禁用

  • 使用功能较弱的模型,可能难以处理复杂的多文件上下文
  • 更喜欢单独审查每个更改

限制

  • 实验性:此功能仍在完善中,可能存在边缘情况
  • 模型依赖:最适合功能更强大的AI模型
  • 令牌使用:由于更大的上下文,初始请求可能使用更多令牌
  • 复杂性:非常大的批量操作可能更难审查

故障排除

更改未批量处理

  • 验证设置中是否启用了实验性标志
  • 检查您的模型是否支持多文件操作
  • 确保文件未被.rooignore限制

批准UI未出现

  • 更新到最新版本的itBuilder
  • 检查VS Code的输出面板是否有错误
  • 尝试禁用并重新启用功能

性能问题

  • 对于非常大的批量,考虑将任务分解为较小的块
  • 如果使用有限的API配额,请监控令牌使用情况

另请参阅