如何通过GitHub GraphQL API获取分支保护规则的「合并前需PR」配置?
获取GitHub分支保护中「合并前需要拉取请求」的设置值
要获取仓库分支保护规则里「合并前需要拉取请求」的配置,你需要在GraphQL查询中添加requiresPullRequestReviews字段——这个布尔类型的字段正是对应该设置的开关。
很多开发者会在BranchProtectionRule官方文档里找不到这个对应项,这里直接给出可运行的PowerShell调用示例(基于GitHub CLI),已补充所需字段:
$JsonContent = & "gh" api graphql -H 'X-Github-Next-Global-ID: 1' -F owner="$repoowner" -F name="$reponame" -f query=' query($name: String!, $owner: String!) { repository(owner: $owner, name: $name) { branchProtectionRules(first: 100) { nodes { matchingRefs(first: 100) { nodes { name } } pattern allowsDeletions allowsForcePushes dismissesStaleReviews isAdminEnforced pushAllowances(first: 100) { nodes { actor { ... on App { id name slug } ... on Team { id name slug } ... on User { id name login } } } } requiresApprovingReviews requiredApprovingReviewCount requiresCodeOwnerReviews requiresCommitSignatures requiresConversationResolution requiresLinearHistory requiresStatusChecks requiredStatusCheckContexts requiresStrictStatusChecks restrictsPushes restrictsReviewDismissals # 新增:获取「合并前需要拉取请求」的设置 requiresPullRequestReviews } } } } '
返回的JSON结果中,requiresPullRequestReviews字段的值为true时,即表示该分支开启了「合并前需要拉取请求」的限制。
内容的提问来源于stack exchange,提问作者Michael Mainer
相关产品推荐
相关产品推荐

