第 02 模块 · 1 节

添加仓库与创建第一个工作树

《Orca 基础入门》02 第一次多 Agent 会话 · 本节时长 24 分钟

本课目标完成「添加仓库 → 创建工作树」两步,亲眼看到 Orca 在后台 git fetch + git worktree add 出一个独立分支。这是多 Agent 并行安全的基石。

添加仓库

  1. 侧边栏点击 Add Repo,指向一个本地 git checkout
  2. Orca 读取 git 状态,把默认分支设为 base ref——每个新工作树都从它分支
  3. base ref 之后可在仓库的 settings 里修改

导入多个仓库:直接选一个包含多个 git 仓库的父文件夹,Orca 可以把它们作为独立仓库导入,或归入同一个 project group(项目组)。


创建第一个工作树

点击仓库名旁边的 +,弹出 Create Worktree 对话框:

字段 说明
任务名 fix-login-race;留空则 Orca 用一个海洋生物名命名
Start-from ref 默认是 base ref(如 origin/main),也可以选本地分支、某个 commit SHA、或远程分支
Run on 运行位置:本地 / SSH 主机 / 远程服务器 / Cloud VM(基础课先选 Local)
Agent 预选默认 Agent(Settings → Agents 可设),或选 Blank Terminal 空终端

高级抽屉(Advanced):可以手动指定分支名(如 feature/my-branch)。

后台创建提交后对话框立刻关闭——git fetchgit worktree add 在后台继续。新工作树以「进度行」出现在侧边栏,标签页实时显示 setup 状态,完成后自动切到终端。你可以边创建边干别的,也可以随时取消。

创建之后发生了什么

Orca 做的是一系列真实 git 操作:

git fetch origin                 # 后台拉取
git worktree add <托管目录> -b fix-login-race origin/main

于是仓库里多了一个真实存在的 worktree:独立目录、独立分支、独立文件。之后你完全可以用普通 git 命令操作它:

git worktree list                # 查看所有工作树
git -C <托管目录> status         # 查看该工作树状态

工作树里的目录问题

新 worktree 是一份干净 checkout:被 gitignore 的依赖、缓存、本地密钥(node_modules.env.cache)都不会自动出现。Orca 用三种方式补这个缺口(第 03 模块详细讲):

  1. Worktree Shared Paths(仓库设置):从主 checkout 物化到每个新工作树
  2. orca.yamlsharedDirectories:仓库内检入的 gitignore 目录共享清单
  3. .worktreeinclude:每个工作树各持一份的 gitignore 文件/目录拷贝清单

落地练习:创建你的第一个工作树

  1. 在侧边栏点击仓库旁的 +
  2. 输入任务名 hello-orca(体验一下默认海洋生物名的乐趣也可以)
  3. 保持 Run on = Local、Agent 先选 Blank Terminal
  4. 等进度条走完,观察新标签页的 setup 状态变成终端
  5. 在终端里跑 git branch --show-current,确认分支名与工作树一致

怎么判断做对了?——侧边栏出现名为 hello-orca 的工作树,终端里 git branch --show-current 输出 hello-orca

卡住了怎么办? 创建失败会在标签页面板里给出错误和 Retry 按钮;最常见的失败原因是远程 fetch 失败(网络/权限),检查仓库的 remote 配置。


小结

  1. Add Repo 后默认分支成为 base ref
  2. Create Worktree = 任务名 + start-from ref + Run on + Agent
  3. 创建在后台进行,不打断当前工作
  4. 每个工作树都是真实 git worktree,普通 git 命令完全可用
  5. gitignore 的依赖目录需要额外的共享/拷贝机制(下节讲)

下一节,我们在这个工作树里启动 Agent。