概述
当你想在同一个仓库里同时推进多个任务,又不希望它们互相干扰时,可以用并行协作。Qoder CLI 提供几种隔离手段:用 Worktree 把不同任务放进独立的 Git 检出,用 后台 Agent / Tasks 让多个子任务并行推进,并通过 Subagent 把复杂工作拆分给专门的子代理。
这样每个任务都有自己的工作区和上下文,避免多个会话共享同一个目录、互相覆盖改动。
Worktree 隔离
Worktree 让每个任务在独立的 Git 工作树中进行,互不影响。用 --worktree 启动:
- 不传名称时,Qoder 会自动生成一个 worktree 名称。
- 新的命名 worktree 放在
<repo>/.qoder/worktrees/<处理后的名称>下,并创建对应的临时分支。 - 同名 worktree 已存在时会直接复用,而不是重复创建。
并行会话
借助 Worktree,你可以为不同任务分别启动会话,让它们在各自独立的目录中并行进行:
后台 Agent 与 Subagent
对于单个复杂任务,可以把它拆分给多个 Subagent 分别处理,让子任务并行推进。用 /tasks 查看当前正在运行的后台任务:
isolation: worktree。干净的 Subagent worktree 会在结束后自动删除,有改动的则保留。
Subagent 的创建、配置与编排见 子代理。
恢复与清理
会话结束时,Qoder 会打印 worktree 路径和恢复该会话的命令。交互式退出会检查 worktree 中的未提交文件和新增提交:干净的 worktree 可以自动删除,存在本地文件或提交时会让你选择保留或删除。
需要手动清理时:
提示
- 一任务一 worktree:把互不相关的任务放进各自的 worktree,避免改动交叉。
- 需要本地文件时:新 worktree 是干净检出,默认不含未跟踪文件。需要复制
.env等文件时,用仓库根目录的.worktreeinclude声明,详见 运行任务。 - 及时清理:任务完成、合并后删除不再需要的 worktree 和临时分支,保持仓库整洁。