替换 GitHub 服务

如果您仍然依赖已弃用的 GitHub 服务,请了解如何将服务挂钩迁移到 web 挂钩。

我们弃用了 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 服务:

  1. 此列表确定您需要订阅的相关 web 挂钩事件。

  2. 根据您当前如何使用 GitHub 服务更改您的配置:

    • GitHub 应用程序:更新应用程序的权限和订阅的事件,以配置应用程序接收相关的 web 挂钩事件。
    • OAuth 应用程序:请求 repo_hook 和/或 org_hook 作用域以代表用户管理相关事件。
    • GitHub 服务提供商:请求用户手动配置包含发送给您的相关事件的 web 挂钩,或者借此机会构建一个应用程序来管理此功能。 更多信息请参阅“关于应用程序”。
  3. 从 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 文档都是开源的。看到错误或不清楚的内容了吗?提交拉取请求。

做出贡献

或, 了解如何参与。