GitHub 集成
GitHub 集成把代码托管和任务流打通。它和组织里给 Agent 用的「连接代码库」不是同一件事:这里管的是 PR 关联、Issue 同步和任务回链,不负责 Agent 在电脑上 clone 代码。
GitHub 集成能做什么?
- 组织连接 GitHub:组织 owner 或 admin 安装 GitHub 应用,并选择仓库。
- 把 Pull Request 和任务关联:分支名、PR 标题或正文里出现任务编号时,会尝试关联,并可以在 GitHub 上回链任务。
- 把 GitHub Issue 同步到某个空间:把已安装应用的仓库关联到空间后,新建 Issue 会同步为任务。
- 另连个人 GitHub 账号:成员可以把自己的 GitHub 账号和组织连接分开绑定;同步到 GitHub Issue 的评论会尽量用这个人的身份。
从哪里进入?
打开 外部应用集成。GitHub 在 Git 仓库 分组里,卡片名称是 GitHub 和 GitHub Issue。菜单名称以线上为准。
绑定了 GitHub 组织、但还没连个人账号时,卡片会按「已绑定 GitHub 组织」展示,不是已绑定个人账户。
连接组织 GitHub
组织 owner 或 admin 可以绑定 GitHub 组织。
- 进入 外部应用集成,打开 GitHub 详情页。
- 在 绑定 GitHub 组织 中点击 绑定。
- 在 GitHub 安装应用,并选择这次要接入的仓库。
- 回到 HiFox,确认状态为 已绑定。
只有实际管理这次 GitHub 应用安装的人,才能完成绑定。
断开某个 GitHub 组织后,来自该组织的 Pull Request 关联和任务回链会停止。已有任务和 GitHub 上的内容不会被删除。
个人 GitHub 账号
个人 GitHub 账号和组织连接不是同一件事。
- 组织连接决定仓库、PR 关联和 Issue 同步能不能工作。
- 我的 GitHub 账号 决定同步到 GitHub Issue 的评论尽量用谁的身份。没连个人账号时,走应用机器人身份。
关联后,你创建的 GitHub Issue 和评论会尽量归属到你,负责人也会尽量双向同步。该 GitHub 账号已经关联到其他成员时,不能再绑到你这边。
PR 和任务
设置页的 Git PR & Commit 关联到任务 里,可以开关 关联 Pull Request 和 关联 Git Commit。
把任务编号写进:
- Pull Request 的标题;
- Pull Request 的描述;
- 来源分支名。
出现任务编号就会尝试关联。例如「Fixes HF-123」或只写「HF-123」都可以。
这里没有 fixes / closes / skip 这类关键字语义。合并 Pull Request 不会改任务状态。
公开仓库只关联可信作者的 Pull Request:仓库 owner、member 或 collaborator。
任务回链
任务回链会在关联的 Pull Request 和 GitHub Issue 下评论一条任务链接。开关在 GitHub 设置里:
- 私有仓库:默认开;
- 公开仓库:默认关。
空间是公开还是私有,不是回链开关。
Issue 同步
把一个 GitHub 仓库链到一个空间后,该仓库里新建的 GitHub Issue 会同步为任务。已有 Issue 不会导入。
同步方向:
关闭或重开 GitHub Issue,可以带动已经配对的任务状态。合并 Pull Request 不会。
把私有空间链到公开仓库、且方向会把内容写出时(例如双向),需要明确确认:任务标题、描述和成员评论会同步到 GitHub,任何人都能看到。
移除仓库关联后,新的 GitHub Issue 不再同步,已经创建的任务会保留。断开单个任务的 GitHub 同步,也不会删除任务或 Issue。
评论发到哪?
任务自己的评论框是内部讨论,不会发到 GitHub。
只有任务里 来自 GitHub … 的评论 这一块的回复框(发布到 GitHub)才会写到对应 Issue。这和 Slack 话题、飞书话题同一原则:外发回复走各自那条会话。
该仓库是单向同步时,回复不会发送到 GitHub。
常见问题
连了 GitHub,Agent 就能 clone 代码了吗?
不能。组织 GitHub 集成不管电脑上的 Git 凭证。Agent clone 代码仍看电脑上的 SSH key、HTTPS token 或代码托管凭据,见 连接代码库。
为什么卡片显示已绑定组织,我却还要再连一次 GitHub?
组织绑定和个人账号是两步。组织绑定给全组织用;个人账号只影响你在 GitHub Issue 上的发言身份。
合并 PR 会不会自动完成任务?
不会。出现任务编号只会尝试关联。没有 fixes / closes 语义,合并也不会改任务状态。
断开 GitHub 会删任务或 Issue 吗?
不会。断开组织、移除仓库关联,或断开单个任务的 GitHub 同步,都不会删除已有任务或 GitHub 上的内容。