跳转到主要内容
连接仓库是告诉 Orbi 它可以处理哪个仓库的 Issue,以及往哪个分支提交拉取请求。 连接是自助的:你在连接页上挑好仓库和基础分支,Orbi 随即开始准备工作环境。连接时 Orbi 不会在你的仓库里新建 Issue。同一时间能连几个仓库取决于你的套餐:Free 和 Solo 是一个,Pro 最多五个。换仓库一律要先断开旧的。详见额度与限制。

连接

首次接入、尚未连接仓库时,如果 GitHub App 的安装范围里只有一个仓库,而且它没有归档、开着 Issues,Orbi 会自动按默认分支连接,跳过选择表单。出现选择表单时,按下面步骤选择仓库和基础分支。 还没连过仓库时,状态页主卡写着「先连接一个 GitHub 仓库」,点「连接仓库」;已经连过仓库的话,点状态页项目概览右上角的「管理项目」,打开的是同一个页面。
  1. 「仓库」:从你的 GitHub App 安装所覆盖的仓库里挑。仓库超过 8 个时会多一个「搜索仓库」框,输入名字的一部分就能筛选。
  2. 「基础分支」:Orbi 提交拉取请求的目标分支。选中一个仓库之后,页面会载入它真实的分支列表并预选默认分支,所以通常你只需要确认。只能选择已经存在的分支。分支列表读不到时先刷新重试;无法核实前,页面不会提供连接按钮。
  3. 点「连接仓库」。处理期间按钮会变成「正在连接…」,不用再点一次。
连接成功后直接进入这个项目的状态页,开始准备工作环境。环境就绪后,Orbi 会读仓库并给出建议;新任务先「查看需求」,确认后才交付。你仍可自己写需求,或在 GitHub 新建 Issue 并打上 ai-ready。
如果仓库是空的,一个 commit 都没有,选中它时页面会提示你。连接时 Orbi 会在基础分支上放一个 README 文件作为第一个提交,因为 Orbi 需要有 commit 才能从它拉分支。
想在自己的 GitHub 账号下试一个小项目,展开连接页上的「还没有合适的仓库?用 Orbi 的示例新建一个」,点「打开示例模板 ↗」。所有套餐都能在真实项目之外再连接一个经核实的官方示例副本,不占仓库名额,也不占免费交付次数。仅名称相似的普通仓库不算,见示例体验。

仓库要满足的条件

一个仓库只有满足下面几条才能被连接:
  • 它在你的 GitHub App 安装范围内。Orbi 只看得见你授权过的仓库。
  • 它开启了 Issues。Orbi 通过 Issues 接收任务,所以关掉了 Issues 的仓库在列表里会标上「(Issues 已关闭,需先开启)」,选中它时页面会给出「仓库设置」链接,连接时也会被拒掉。先到仓库的 Settings → Features 里勾选 Issues。
  • 它没有被归档。归档的仓库不会出现在列表里。
已经连接的仓库也不会再出现在列表里。你提交时,Orbi 会再查一次这个仓库是否仍在安装范围内、是否开着 Issues,所以中间被取消授权的仓库也会被拦住。

列表里没有你的仓库时

列表里只有你的 App 安装覆盖到的仓库。如果你的不在里面,展开连接页上的「列表里没有您的仓库?」:
  • 安装 App 时只选了部分仓库的话,点「GitHub App 设置」,在 Repository access 里把要连的仓库加进去,点 Save,再回来刷新。
  • 仓库在组织下的话,在「安装页」选这个组织;你不是组织管理员的话,请管理员安装或批准。
GitHub 仓库列表读不到时,页面允许按「所有者/仓库名」填写仓库。这个降级表单使用 main 作为基础分支,连接前仍验证授权和分支是否存在,不再提供手填分支框。需要别的分支时,等 GitHub 恢复后用正常的分支选择器。

会卡住每一次合并的分支保护

如果你的基础分支要求合并前必须有人批准,这个设置会让每一次任务都停在合并那一步。 原因在身份:Orbi 用同一个 GitHub App 的身份提交拉取请求并合并它,而 GitHub 不允许拉取请求的作者批准自己的拉取请求。在必须批准的规则生效时,每个任务都只能走到检查通过、等着合并这一步,然后合不进去。这时状态页的标题是「需要您在 GitHub 上批准这次改动」,任务的状态显示「等您批准」。 交出需求前,写需求页会提示「您的仓库设置了合并前需要批准」,让你知道 Orbi 会等你批准。按你的仓库策略选择:
  1. 保留人工批准:由 PR 作者之外的评审人在 GitHub 批准,其余条件通过后 Orbi 再合并。
  2. 为实际合并身份配置绕过权限,前提是仓库策略允许。管理员可在「Settings → Rules → Rulesets」把已安装的 Orbi GitHub App 加到对应规则的绕过列表。只给个人管理员账号绕过权限,不会同时给 App 权限。见 GitHub 的操作说明。
  3. 取消必须批准的规则:仅在你的策略允许独立评审和 CI 通过后直接合并时使用。
只有仓库管理员能改规则,不需要重新连接 Orbi;其他生效的分支规则和 ruleset 仍需满足。

连接多个仓库

如果你的套餐允许多个仓库,在状态页上点「管理项目」。连接页会显示你已用了多少、上限是多少(例如「已用 1 / 上限 5 个仓库」),并在「已连接」下列出已连接的仓库。选另一个仓库,点「连接仓库」。新加的仓库不会影响已连接的那些,每个仓库有自己的工作环境,各自准备。 状态页「项目」区每个项目一行,右上角「管理项目」显示已用数量和上限。多个项目时,总览显示各项目摘要,不汇总所有项目的任务表。点某一行进入该项目详情,查看基础分支、当前状态、任务记录和版本;免费账户也能看到版本入口。建议块可在「全部」和单个项目之间切换。见状态页。

修改基础分支

点「管理项目」,找到已连接仓库,点「改基础分支」,在「基础分支」下拉里选已有分支,再点「保存基础分支」。不用断开仓库。GitHub 分支列表读不到时先刷新重试,未经验证的分支名不能保存。 如果某张 Issue 因旧基础分支不存在而卡住,修正分支后通常 1–2 分钟会自动重新排队,不用再改标签。其他原因的卡住仍需要对应的修复。

更换已连接的项目

所有套餐都是同一条规则:先断开要换掉的仓库,再连接新的。 连接新仓库不会自动替换旧的。
  1. 点「管理项目」,在「已连接」里找到要换掉的那个,点「断开…」,再点「确认断开」。
  2. 选新仓库,点「连接仓库」。
断开后 Orbi 会回收这个仓库的工作环境,不会改动 GitHub 上的仓库,历史记录和用量保留:它会出现在状态页「用量与设置」的「已断开的项目」里。以后再连接它,会重新准备工作环境,和任何新仓库一样,一般 10–20 秒。 已经到了套餐上限时,连接页的标题是「仓库名额已满」:没有连接表单,只列出已连接的仓库,每个都带「断开…」。例外是刚建好的示例副本:它不占名额,这时页面显示「连上刚建好的示例副本」和「连接示例副本」,不用先断开别的仓库。如果连接请求因为同样的原因被拒,出错页会给出「去断开仓库」;套餐低于 Pro 时还有升级到 Pro 的按钮。

各种报错是什么意思

接下来会发生什么

连接后 Orbi 会准备工作环境:搭起任务运行的隔离环境,并把 ai-* 标签装进你的仓库。等「准备工作环境」这一步完成,就可以写第一个需求,或者把已有的 Issue 交给 Orbi。