跳至主要内容

排除规则问题

了解在为仓库做出贡献时如何排除规则集的问题。

谁可以使用此功能?

规则集在使用 GitHub Free 和 GitHub Free for organizations 的公共仓库中可用,在使用 GitHub Pro、GitHub Team 和 GitHub Enterprise Cloud 的公共和私有仓库中也可用。欲了解更多信息,请参阅 GitHub 的计划

在内部和私有仓库以及已启用推送规则集的仓库的分叉中,GitHub Team 方案提供推送规则集功能。

排除规则集故障

如果您在仓库中无法执行某个操作并想了解原因,您可以查看针对您正在使用的分支或标签的活动规则集。更多信息请参见 管理仓库的规则集

根据激活的规则,您可能需要在本地编辑提交历史,然后才能将提交推送到远程分支。例如,如果某分支要求提交必须签名,您可以更新签名设置,然后在本地分支上使用交互式变基(interactive rebase)将 Git 历史重写为已签名的提交。更多信息请参见 规则集可用规则在命令行使用 Git 变基

如果分支或标签受到限制提交元数据的规则影响,当提交的某些元数据不符合特定模式时,提交可能会被拒绝。例如,您可能需要在提交信息开头添加问题编号,或更改您尝试推送到仓库的新分支或标签的名称。如果提交被拒绝,您会看到一条指明相应元数据应匹配的模式的消息。与签名提交类似,您可能需要执行变基来压缩提交或逐个重写提交。更多信息请参见 规则集可用规则

在使用推送规则集时,每次推送最多允许 1000 次引用更新。如果您的推送超过此限制,将被拒绝。更多信息请参见 为仓库创建规则集

此外,推送规则集同样适用于 REST API 中的 “Create a blob”(创建 Blob)、“Create a tree”(创建树) 和 “Create or update file contents”(创建或更新文件内容) 接口。请参阅 Git Blob 的 REST API 端点Git Tree 的 REST API 端点仓库内容的 REST API 端点

排除强制状态检查的故障

定义状态检查时,名称格式取决于检查类型

  • Workflow: The name format is <job name>.
  • Reusable workflow: The name format is <job name> / <reusable job name>.
  • Other checks: The name format is <check name>.

强制状态检查不考虑工作流、矩阵或事件触发类型。

© . This site is unofficial and not affiliated with GitHub, Inc.