我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

此版本的 GitHub Enterprise 将停止服务 此版本的 GitHub Enterprise 已停止服务 2020-05-23. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

文章版本: Enterprise Server 2.17

关于必需状态检查

必需状态检查确保在协作者可以对受保护分支进行更改前,所有必需的 CI 测试都已通过。

受保护分支适用于具有 GitHub Free 的公共仓库,以及具有 GitHub Pro、GitHub Team、GitHub Enterprise Cloud 及 GitHub Enterprise Server 的公共和私有仓库。

本文内容

关于必需状态检查

如果您在仓库中实施了分支保护,便可设置必需状态检查。 更多信息请参阅“配置受保护分支”和“启用必需状态检查”。必须状态检查可以是检查或状态。 For more information, see "About status checks."

在启用必需状态检查后,必须通过所有必需状态检查后,分支才可合并到受保护分支。 After all required status checks pass, any commits must either be pushed to another branch and then merged or pushed directly to the protected branch.

合并受保护分支

注:对仓库具有写入权限的任何个人或集成可以在仓库中设置任何状态检查的状态。 GitHub Enterprise 无法验证检查的作者是否被授权创建具有特定名称的检查或修改现有状态。 Before merging a pull request, you should verify that the author of each status, listed in the merge box, is expected.

即使必需状态检查失败或待处理,仓库管理员也可以合并受保护分支。 您可以要求管理员遵循必需状态检查。 For more information, see "Enabling required status checks."

管理员合并受保护分支

即使受保护分支过期,管理员也可使用基本分支合并该分支。

Required status checks settings

You can set up either loose or strict status checks, depending on whether you want to require your branch to be up to date with the base branch before merging. For more information, see "Types of required status checks."

Troubleshooting required status checks

If you have a check and a status with the same name and you select that name as a required status check, both the check and the status are required. 更多信息请参阅 GitHub 开发者文档中的“Checks”。

在设置必需状态检查后,您的分支在合并之前必须使用基本分支更新。 这可确保您的分支已经使用基本分支的最新代码做过测试。 如果您的分支过期,则需要将基本分支合并到您的分支。

Note: You can also bring your branch up to date with the base branch using Git rebase. 更多信息请参阅“关于 Git 变基”。

过期分支

在通过所有必需状态检查之前,无法向受保护分支推送本地更改。 反而会收到类似如下的错误消息:

remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Required status check "ci-build" is failing

注:最新且通过必需状态检查的拉取请求可以本地合并,并且推送到受保护分支。 此操作无需对合并提交本身运行状态检查。

延伸阅读

问问别人

找不到要找的内容?

联系我们