我们弃用了 GitHub 服务,转而支持与 web 挂钩集成。 本指南可帮助您从 GitHub 服务过渡到 web 挂钩。 有关此公告的更多信息,请参阅博客文章。
作为电子邮件服务的替代方法,您现在可以开始使用推送到仓库的电子邮件通知。 有关如何配置提交电子邮件通知,请参阅“关于推送到仓库的电子邮件通知”。
弃用时间表
- 2018 年 10 月 1 日:GitHub 停止允许用户安装服务。 我们从 GitHub.com 用户界面中删除了 GitHub 服务。
- 2019 年 1 月 29 日:作为电子邮件服务的替代方法,您现在可以开始使用推送到仓库的电子邮件通知。 有关如何配置提交电子邮件通知,请参阅“关于推送到仓库的电子邮件通知”。
- 2019 年 1 月 31 日:GitHub 将停止在 GitHub.com 上交付已安装服务的事件。
GitHub 服务背景信息
GitHub 服务(有时称为服务挂钩)是传统的集成方法,其中 GitHub 通过 github-services
仓库托管集成者的部分服务。 在 GitHub 上执行的操作会触发这些服务,您可以使用这些服务在 GitHub 之外触发操作。
查找使用 GitHub 服务的仓库
我们提供命令行脚本,帮助您识别设备上哪些仓库使用 GitHub 服务。 更多信息请参阅 ghe-legacy-github-services-report。
GitHub 服务与 web 挂钩
GitHub 服务与 web 挂钩之间的主要区别:
- 配置:GitHub 服务具有特定于服务的配置选项,而 web 挂钩只需指定 URL 和一组事件即可进行配置。
- 自定义逻辑:GitHub 服务可以具有自定义逻辑,在处理单个事件时使用多个操作进行响应,而 web 挂钩没有自定义逻辑。
- 服务类型:GitHub 服务可以发出 HTTP 和非 HTTP 请求,而 web 挂钩只能发出 HTTP 请求。
用 web 挂钩替换服务
要用 web 挂钩替换 GitHub 服务:
-
从此列表确定您需要订阅的相关 web 挂钩事件。
-
根据您当前如何使用 GitHub 服务更改您的配置:
- GitHub 应用程序:更新应用程序的权限和订阅的事件,以配置应用程序接收相关的 web 挂钩事件。
- OAuth 应用程序:请求
repo_hook
和/或org_hook
作用域以代表用户管理相关事件。 - GitHub 服务提供商:请求用户手动配置包含发送给您的相关事件的 web 挂钩,或者借此机会构建一个应用程序来管理此功能。 更多信息请参阅“关于应用程序”。
-
从 GitHub 外部移动额外配置。 某些 GitHub 服务需要在 GitHub 中的配置页面上进行额外的自定义配置。 如果您的服务这样做,则需要将此功能移动到应用程序中,或在适用的情况下依赖 GitHub 或 OAuth 应用程序。
支持 GitHub Enterprise Server
- GitHub Enterprise Server 2.17:GitHub Enterprise Server 2.17 及更高版本将停止允许管理员安装服务。 在 GitHub Enterprise Server 2.17 至 2.19 版本中,管理员仍然能够修改现有服务挂钩和接收服务挂钩。 在 GitHub Enterprise Server 2.17 及更高版本中,作为电子邮件服务的替代方法,您将能够使用推送到仓库的电子邮件通知。 更多信息请参阅这篇博客文章。
- GitHub Enterprise Server 2.20:GitHub Enterprise Server 2.20 及更高版本将停止交付所有已安装服务的事件。
GitHub Enterprise Server 2.17 版将是不允许管理员安装 GitHub 服务的第一个版本。 我们将仅支持现有的 GitHub 服务,直到 GitHub Enterprise Server 2.20 版本。 我们还将接受 GitHub Enterprise Server 上运行的 GitHub 服务的任何重要补丁,直到 2019 年 10 月 1 日。
在我们的帮助下迁移
如有任何问题,请联系我们。
作为高度概述,迁移过程通常涉及:
- 确定产品使用 GitHub 服务的方式和位置。
- 确定需要配置的相应 web 挂钩事件,以便移动到普通 web 挂钩。
- 使用 OAuth 应用程序 或 GitHub 应用程序 实现设计。 GitHub 应用程序 优先。 要了解为什么优先使用 GitHub 应用程序,请参阅“切换到 GitHub 应用程序 的原因”。