如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
GitHub MCP Server将AI工具直接连接到GitHub平台。这使AI代理、助手和聊天机器人能够读取仓库和代码文件、管理issues和PRs、分析代码并自动化工作流。所有这些都通过自然语言交互实现。
专为希望将其AI工具连接到GitHub上下文和功能的开发人员构建,支持从简单的自然语言查询到复杂的多步骤代理工作流。
如需快速安装,请使用上方的一键安装按钮之一。完成该流程后,切换代理模式(位于Copilot Chat文本输入框旁边),服务器将启动。确保使用https://code.visualstudio.com/updates/v1_101或https://code.visualstudio.com/updates以支持远程MCP和OAuth。
或者,要手动配置VS Code,请从以下示例中选择适当的JSON块并将其添加到主机配置中:
使用OAuth 使用GitHub PAT VS Code(1.101或更高版本)
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/"
}
}
}
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
"Authorization": "Bearer ${input:github_mcp_pat}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "github_mcp_pat",
"description": "GitHub Personal Access Token",
"password": true
}
]
}
[!NOTE] 每个MCP主机应用程序需要配置GitHub App或OAuth App以支持通过OAuth进行远程访问。任何支持远程MCP服务器的主机应用程序都应支持使用PAT身份验证的远程GitHub服务器。配置详情和支持级别因主机而异。请务必参考主机应用程序的文档以获取更多信息。
工具集配置
有关远程服务器配置、工具集、标头和高级用法的完整详细信息,请参见远程服务器文档。该文件提供了在VS Code和其他MCP主机中连接、自定义和安装远程GitHub MCP Server的全面说明和示例。
未指定工具集时,将使用默认工具集。
预览版模式
[!NOTE] 抢先体验新功能!远程服务器提供预览版,可提前访问新功能和实验性工具。
使用URL路径 使用标头
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/insiders"
}
}
}
{
"servers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
"X-MCP-Insiders": "true"
}
}
}
}
有关更多详细信息和示例,请参见远程服务器文档,有关可用功能的完整列表,请参见预览版功能。
GitHub Enterprise
具有数据驻留的GitHub Enterprise Cloud(ghe.com)
GitHub Enterprise Cloud也可以使用远程服务器。
https://octocorp.ghe.com使用GitHub PAT令牌的示例:
{
...
"github-octocorp": {
"type": "http",
"url": "https://copilot-api.octocorp.ghe.com/mcp",
"headers": {
"Authorization": "Bearer ${input:github_mcp_pat}"
}
},
...
}
[!NOTE] 在VS Code和GitHub Copilot中使用GitHub Enterprise的OAuth时,您还需要配置VS Code设置以指向您的GitHub Enterprise实例 - 参见https://docs.github.com/en/enterprise-cloud@latest/copilot/how-tos/configure-personal-settings/authenticate-to-ghecom
GitHub Enterprise Server
GitHub Enterprise Server不支持远程服务器托管。请参考本地服务器配置中的GitHub Enterprise Server和具有数据驻留的Enterprise Cloud(ghe.com)。
ghcr.io/github/github-mcp-server。该镜像是公开的;如果拉取时出现错误,您可能有过期的令牌,需要执行docker logout ghcr.io。127.0.0.1:8085),以便容器的登录回调可访问。有关其工作原理、无头/设备代码回退以及使用您自己的OAuth或GitHub App(GitHub Enterprise Server和ghe.com需要)的信息,请参见本地服务器OAuth登录。更倾向于使用令牌?你仍然可以通过设置 GITHUB_PERSONAL_ACCESS_TOKEN 来使用 https://github.com/settings/personal-access-tokens/new 进行身份验证(其优先级高于 OAuth)。MCP 服务器可以使用许多 GitHub API,因此请启用你愿意授予 AI 工具的权限(要了解更多关于访问令牌的信息,请查看 https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens)。
为确保 GitHub PAT 的安全性并能在不同 MCP 主机间复用:
export GITHUB_PAT=your_token_here
或创建 .env 文件:
GITHUB_PAT=your_token_here
.env 文件# 添加到 .gitignore 以防止意外提交
echo ".env"
>> .gitignore
# CLI 使用方式
claude mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
# 在配置文件中(如支持)
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_PAT"
}
[!NOTE] 环境变量支持因主机应用和 IDE 而异。某些应用程序(如 Windsurf)要求在配置文件中硬编码令牌。
repo - 仓库操作read:packages - Docker 镜像访问read:org - 组织团队访问chmod 600 ~/.your-app/config.json
标志 --gh-host 和环境变量 GITHUB_HOST 可用于设置 GitHub Enterprise Server 或具有数据驻留功能的 GitHub Enterprise Cloud 的主机名。
https:// URI 方案。HTTPS 是必需且强制的:非 HTTPS 主机将被拒绝,以确保凭据不会通过明文传输(唯一例外是本地开发用的环回主机,如 http://localhost)。https://YOURSUBDOMAIN.ghe.com 作为主机名。"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"-e",
"GITHUB_HOST",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}",
"GITHUB_HOST": "https:// "
}
}
如需快速安装,请使用上方的一键安装按钮之一。完成该流程后,切换代理模式(位于 Copilot 聊天文本输入框旁),服务器将启动。
有关在 VS Code 中使用 MCP 服务器工具的更多信息,请参阅 https://code.visualstudio.com/docs/copilot/chat/mcp-servers。
将以下 JSON 块之一添加到 IDE 的 MCP 设置中。
使用 OAuth 登录(无需创建或存储令牌)。 在 github.com 上,官方镜像已包含应用凭据,因此你无需自行提供:首次使用时会运行基于浏览器的登录,并将生成的令牌仅保存在内存中。在 Docker 中,需要将固定的回调端口发布到环回地址,以便容器的登录回调可访问:
{
"mcp": {
"servers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"127.0.0.1:8085:8085",
"-e",
"GITHUB_OAUTH_CALLBACK_PORT",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_OAUTH_CALLBACK_PORT": "8085"
}
}
}
}
}
有关原生二进制流程(无需固定端口)、无头/设备代码回退、GitHub Enterprise Server / ghe.com 以及使用你自己的 OAuth 或 GitHub 应用的信息,请参阅 本地服务器 OAuth 登录。
对于非交互式标准输入输出部署,请参阅 GitHub 应用身份验证。
或使用个人访问令牌进行身份验证。 改为设置 GITHUB_PERSONAL_ACCESS_TOKEN(其优先级高于 OAuth):
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "github_token",
"description": "GitHub Personal Access Token",
"password": true
}
],
"servers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
}
}
}
}
}
你也可以选择将类似示例(即不包含 mcp 键)添加到工作区中名为 .vscode/mcp.json 的文件中。这将允许你与接受相同格式的其他主机应用共享配置。
不包含 MCP 键的 JSON 块示例
{
"inputs": [
{
"type": "promptString",
"id": "github_token",
"description": "GitHub Personal Access Token",
"password": true
}
],
"servers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
}
}
}
}
对于其他 MCP 主机应用,请参考我们的安装指南:
有关所有安装选项的完整概述,请参阅我们的 安装指南索引。
GitHub MCP Server 支持通过 --toolsets 标志启用或禁用特定功能组。这使您能够控制 AI 工具可使用哪些 GitHub API 功能。仅启用所需的工具集有助于 LLM 进行工具选择并减少上下文大小。
工具集不仅限于工具。相关的 MCP 资源和提示(Prompts)也会在适用情况下包含在内。
未指定工具集时,将使用默认工具集。
[!NOTE] 寻找示例?请参阅服务器配置指南,了解最小化设置、只读模式以及工具与工具集组合等常见方案。
指定工具集
要指定 LLM 可用的工具集,您可以通过两种方式传递允许列表:
github-mcp-server --toolsets repos,issues,pull_requests,actions,code_security
GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" ./github-mcp-server
如果同时提供环境变量和命令行参数,GITHUB_TOOLSETS 环境变量将优先于命令行参数。
指定单个工具
您还可以使用 --tools 标志配置特定工具。工具可以独立使用,也可以与工具集组合以实现细粒度控制。
github-mcp-server --tools get_file_contents,issue_read,create_pull_request
GITHUB_TOOLS="get_file_contents,issue_read,create_pull_request" ./github-mcp-server
github-mcp-server --toolsets repos,issues --tools get_gist
这会注册 repos 和 issues 工具集中的所有工具,以及 get_gist。
[!IMPORTANT] 重要说明:
- 工具和工具集可以一起使用
- 只读模式优先:如果设置了
--read-only,即使通过--tools明确请求,写入工具也会被跳过- 工具名称必须完全匹配(例如
get_file_contents,而非getFileContents)。无效的工具名称会导致服务器启动失败并显示错误消息- 工具重命名时,旧名称将作为别名保留以确保向后兼容性。详情请参见工具重命名。
使用 Docker 时,您可以将工具集作为环境变量传递:
docker run -i --rm \
-e GITHUB_PERSONAL_ACCESS_TOKEN= \
-e GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" \
ghcr.io/github/github-mcp-server
使用 Docker 时,您可以将特定工具作为环境变量传递。您也可以将工具与工具集组合:
# 仅使用工具
docker run -i --rm \
-e GITHUB_PERSONAL_ACCESS_TOKEN= \
-e GITHUB_TOOLS="get_file_contents,issue_read,create_pull_request" \
ghcr.io/github/github-mcp-server
# 工具与工具集组合(累加)
docker run -i --rm \
-e GITHUB_PERSONAL_ACCESS_TOKEN= \
-e GITHUB_TOOLSETS="repos,issues" \
-e GITHUB_TOOLS="get_gist" \
ghcr.io/github/github-mcp-server
"all" 工具集
特殊工具集 all 可用于启用所有可用工具集,无论其他配置如何:
./github-mcp-server --toolsets all
或使用环境变量:
GITHUB_TOOLSETS="all" ./github-mcp-server
"default" 工具集
默认工具集 default 是未指定工具集时传递给服务器的配置。
默认配置包含:
要保留默认配置并添加其他工具集:
GITHUB_TOOLSETS="default,stargazers" ./github-mcp-server
本地 GitHub MCP Server 提供内测版(insiders),可提前使用新功能和实验性工具。
./github-mcp-server --insiders
GITHUB_INSIDERS=true ./github-mcp-server
使用 Docker 时:
docker run -i --rm \
-e GITHUB_PERSONAL_ACCESS_TOKEN= \
-e GITHUB_INSIDERS=true \
ghcr.io/github/github-mcp-server
以下是可用的工具集:
| 工具集(Toolset) | 描述 | |
|---|---|---|
context | 强烈推荐:提供当前用户上下文和您正在操作的 GitHub 上下文的工具 | |
actions | GitHub Actions 工作流和 CI/CD 操作相关工具 | |
code_quality | GitHub 代码质量相关工具 | |
code_security | 代码安全相关工具,如 GitHub Code Scanning | |
copilot | Copilot 相关工具 | |
copilot_issue_intents | 可选的 Copilot 问题分配工具,包含意图元数据(理由、置信度、建议) | |
dependabot | Dependabot 工具 | |
discussions | GitHub Discussions 相关工具 | |
gists | GitHub Gist 相关工具 | |
git | 用于低级 Git 操作的 GitHub Git API 相关工具 | |
governance | 存储库治理工具,用于在存储库、组织和企业级别管理规则集和自定义属性 | |
issues | GitHub Issues 相关工具 | |
labels | GitHub Labels 相关工具 | |
notifications | GitHub Notifications 相关工具 | |
orgs | GitHub Organization 相关工具 | |
projects | GitHub Projects 相关工具 | |
pull_requests | GitHub Pull Request 相关工具 | |
repos | GitHub Repository 相关工具 | |
secret_protection | 密钥保护相关工具,如 GitHub Secret Scanning | |
security_advisories | 安全公告相关工具 | |
stargazers | GitHub Stargazers 相关工具 | |
users | GitHub User 相关工具 |
| 工具集 | 描述 |
|---|---|
copilot | Copilot 相关工具(例如 Copilot Coding Agent) |
copilot_spaces | Copilot Spaces 相关工具 |
github_support_docs_search | 搜索文档以回答 GitHub 产品和支持问题 |
actions_get - 获取 GitHub Actions 资源的详细信息(工作流、工作流运行、作业和构件)
OAuth 挑战范围:repo
method:要执行的方法(字符串,必填)
owner:仓库所有者(字符串,必填)
repo:仓库名称(字符串,必填)
resource_id:资源的唯一标识符。根据提供的“method”不同而有所变化,因此请确保提供正确的 ID:
actions_list - 列出仓库中的 GitHub Actions 工作流
OAuth 挑战范围:repo
method:要执行的操作(字符串,必填)
owner:仓库所有者(字符串,必填)
page:分页页码(默认:1)(数字,可选)
perPage:每页结果数(默认:30,最大值:100)(数字,可选)
repo:仓库名称(字符串,必填)
resource_id:资源的唯一标识符。根据提供的“method”不同而有所变化,因此请确保提供正确的 ID:
workflow_jobs_filter:工作流作业的筛选条件。仅在 method 为 'list_workflow_jobs' 时使用(对象,可选)
workflow_runs_filter:工作流运行的筛选条件。仅在 method 为 'list_workflow_runs' 时使用(对象,可选)
actions_run_trigger - 触发 GitHub Actions 工作流操作
OAuth 挑战范围:repo
inputs:工作流接受的输入。仅用于 'run_workflow' 方法。(对象,可选)
method:要执行的方法(字符串,必填)
owner:仓库所有者(字符串,必填)
ref:工作流的 Git 引用。引用可以是分支或标签名称。'run_workflow' 方法必填。(字符串,可选)
repo:仓库名称(字符串,必填)
run_id:工作流运行的 ID。除 'run_workflow' 外的所有方法必填。(数字,可选)
workflow_id:工作流 ID(数字)或工作流文件名(例如 main.yml、ci.yaml)。'run_workflow' 方法必填。(字符串,可选)
get_job_logs - 获取 GitHub Actions 工作流作业日志
OAuth 挑战范围:repo
failed_only:当为 true 时,获取由 run_id 指定的工作流运行中所有失败作业的日志。需要提供 run_id。(布尔值,可选)
job_id:工作流作业的唯一标识符。获取单个作业的日志时必填。(数字,可选)
owner:仓库所有者(字符串,必填)
repo:仓库名称(字符串,必填)
return_content:返回实际日志内容而非 URL(布尔值,可选)
run_id:工作流运行的唯一标识符。当 failed_only 为 true 以获取运行中所有失败作业的日志时必填。(数字,可选)
tail_lines:从日志末尾返回的行数(数字,可选)
repofindingNumber:发现结果的编号。(数字,必填)owner:仓库所有者。(字符串,必填)repo:仓库名称。(字符串,必填)get_code_scanning_alert - 获取代码扫描警报
OAuth 挑战范围:security_events
alertNumber:警报编号。(数字,必填)
owner:仓库所有者。(字符串,必填)
repo:仓库名称。(字符串,必填)
list_code_scanning_alerts - 列出代码扫描警报
OAuth 挑战范围:security_events
owner:仓库所有者。(字符串,必填)
page:分页页码(最小值 1)(数字,可选)
perPage:每页结果数(最小值 1,最大值 100)(数字,可选)
ref:要列出结果的 Git 引用。(字符串,可选)
repo:仓库名称。(字符串,必填)
severity:按严重性筛选代码扫描警报(字符串,可选)
state:按状态筛选代码扫描警报。默认为 open(字符串,可选)
tool_name:用于代码扫描的工具名称。(字符串,可选)
get_me - 获取我的用户资料
无需参数
get_team_members - 获取团队成员
OAuth 挑战范围:read:org
org:包含团队的组织登录名(所有者)。(字符串,必填)
team_slug:团队 slug(字符串,必填)
get_teams - 获取团队
OAuth 挑战范围:read:org
user:要获取团队的用户名。如果未提供,则使用已认证用户。(字符串,可选)
assign_copilot_to_issue - 将 Copilot 分配给议题
OAuth 挑战范围:repo
base_ref:代理开始工作的 Git 引用(例如分支)。如果未指定,默认为仓库的默认分支(字符串,可选)
custom_instructions:可选的自定义指令,用于在议题正文之外指导代理。使用此参数提供议题描述中未包含的其他上下文、约束或指导(字符串,可选)
issue_number:议题编号(数字,必填)
owner:仓库所有者(字符串,必填)
repo:仓库名称(字符串,必填)
request_copilot_review - 请求 Copilot 审核
OAuth 挑战范围:repo
owner:仓库所有者(字符串,必填)
pullNumber:拉取请求编号(数字,必填)
repo:仓库名称(字符串,必填)
repobase_ref:代理开始工作的Git引用(例如分支)。如果未指定,默认为仓库的默认分支。当is_suggestion为true时忽略(字符串,可选)confidence:您对该选择的信心程度。'HIGH'表示明确信号或用户明确请求,'MEDIUM'表示合理推断但存在一些歧义,'LOW'表示基于有限信号的最佳猜测。(string, required)custom_instructions:除议题正文外指导代理的可选自定义指令。当is_suggestion为true时忽略(字符串,可选)is_suggestion:如果为true,则记录待处理的Copilot分配意图而非启动代理。后续审批将提供启动上下文;在此情况下忽略base_ref和custom_instructions。(boolean, required)issue_number:议题编号(number, required)owner:仓库所有者(string, required)rationale:用一句简洁的话解释议题的哪些具体内容导致选择Copilot。说明具体信号(例如“范围明确且验收标准清晰的任务”)。(string, required)repo:仓库名称(string, required)Dependabot
get_dependabot_alert - 获取Dependabot警报
OAuth挑战作用域:security_events
alertNumber:警报编号。(number, required)
owner:仓库所有者。(string, required)
repo:仓库名称。(string, required)
list_dependabot_alerts - 列出Dependabot警报
OAuth挑战作用域:security_events
after:分页游标。使用上一个响应中的游标。(string, optional)
owner:仓库所有者。(string, required)
perPage:分页结果每页数量(最小值1,最大值100)(number, optional)
repo:仓库名称。(string, required)
severity:按严重性筛选Dependabot警报(string, optional)
state:按状态筛选Dependabot警报。默认为open(string, optional)
Discussions
discussion_comment_write - 管理讨论评论
OAuth挑战作用域:repo
body:评论内容('add'、'reply'和'update'方法必填)(string, optional)
commentNodeID:讨论评论的Node ID('reply'、'update'、'delete'、'mark_answer'和'unmark_answer'方法必填)。对于'reply',这是要回复的顶级评论;GitHub Discussions仅支持一级嵌套。(string, optional)
discussionNumber:讨论编号('add'和'reply'方法必填)(number, optional)
method:对讨论评论执行的写操作。
选项包括:
'add' - 向讨论添加新的顶级评论。
'reply' - 回复顶级讨论评论(GitHub Discussions仅支持一级嵌套)。
'update' - 更新现有讨论评论。
'delete' - 删除讨论评论。
'mark_answer' - 将讨论评论标记为答案(仅Q&A)。
'unmark_answer' - 取消将讨论评论标记为答案(仅Q&A)。 (string, required)
owner:仓库所有者('add'和'reply'方法必填)(string, optional)
repo:仓库名称('add'和'reply'方法必填)(string, optional)
get_discussion - 获取讨论
OAuth挑战作用域:repo
discussionNumber:讨论编号(number, required)
owner:仓库所有者(string, required)
repo:仓库名称(string, required)
get_discussion_comments - 获取讨论评论
OAuth挑战作用域:repo
after:分页游标。使用上一个响应中的游标。(string, optional)
discussionNumber:讨论编号(number, required)
includeReplies:当为true时,每个顶级评论将包含其嵌套的回复(每个评论最多100条回复,这是GitHub API的最大值)。默认为false。(boolean, optional)
owner:仓库所有者(string, required)
perPage:分页结果每页数量(最小值1,最大值100)(number, optional)
repo:仓库名称(string, required)
list_discussion_categories - 列出讨论分类
OAuth挑战作用域:repo
owner:仓库所有者(string, required)
repo:仓库名称。如果未提供,将在组织级别查询讨论分类。(string, optional)
list_discussions - 列出讨论
OAuth挑战作用域:repo
after:分页游标。使用上一个响应中的游标。(string, optional)
category:按讨论分类ID筛选的可选参数。如果提供,仅列出具有此分类的讨论。(string, optional)
direction:排序方向。(string, optional)
orderBy:讨论排序字段。如果提供,还需提供'direction'。(string, optional)
owner:仓库所有者(string, required)
perPage:分页结果每页数量(最小值1,最大值100)(number, optional)
repo:仓库名称。如果未提供,将在组织级别查询讨论。(string, optional)
Gists
create_gist - 创建Gist
OAuth挑战作用域:gist
content:用于简单单文件Gist创建的内容(string, required)
description:Gist的描述(string, optional)
filename:用于简单单文件Gist创建的文件名(string, required)
public:Gist是否公开(boolean, optional)
get_gist - 获取Gist内容
gist_id:Gist的ID(string, required)
list_gists - 列出Gists
page:分页页码(最小值1)(number, optional)
perPage:分页结果每页数量(最小值1,最大值100)(number, optional)
since:仅返回此时间之后更新的Gists(ISO 8601时间戳)(string, optional)
username:GitHub用户名(省略则为已认证用户的Gists)(string, optional)
update_gist - 更新Gist
OAuth挑战作用域:gist
content:文件内容(string, required)
description:Gist的更新描述(string, optional)
filename:要更新或创建的文件名(string, required)
gist_id:要更新的Gist的ID(string, required)
Git
repoowner:仓库所有者(用户名或组织)(string, required)path_filter:可选的路径前缀,用于过滤树结果(例如,'src/'仅显示src目录中的文件)(string, optional)recursive:将此参数设置为true会返回树引用的对象或子树。默认为false(boolean, optional)repo:仓库名称(string, required)tree_sha:树的SHA1值或引用(分支或标签)名称。默认为仓库的默认分支(string, optional)Governance
repo, admin:org, admin:enterprisebypass_actors:可以绕过此规则集中规则的参与者(对象数组,可选)conditions:此规则集适用的条件,例如:{"ref_name": {"include": ["refs/heads/main"], "exclude": []}}
(对象,可选)
enforcement:规则集的执行级别。'evaluate' 允许管理员在强制执行前测试规则(字符串,必填)
enterprise:企业 slug。当级别为 'enterprise' 时必填。(字符串,可选)
level:规则集配置的级别:
name:规则集的名称(字符串,必填)
org:组织名称。当级别为 'organization' 时必填。(字符串,可选)
owner:仓库所有者。当级别为 'repository' 时必填。(字符串,可选)
repo:仓库名称。当级别为 'repository' 时必填。(字符串,可选)
rules:规则集中的规则数组。每个规则是一个包含 'type'(例如 'creation'、'deletion'、'non_fast_forward'、'required_signatures'、'pull_request'、'required_status_checks')的对象;对于需要配置的规则,还包含 'parameters' 对象(对象数组,必填)
target:规则集的目标。默认为 'branch'。'repository' 仅对 'organization' 和 'enterprise' 级别的规则集有效。(字符串,可选)
custom_properties_read - 读取自定义属性
OAuth 挑战作用域:repo, read:org, read:enterprise
enterprise:企业 slug。当级别为 'enterprise' 时必填。(字符串,可选)
level:自定义属性的管理级别:
org:组织名称。当级别为 'organization' 时必填。(字符串,可选)
owner:仓库所有者。当级别为 'repository' 时必填。(字符串,可选)
repo:仓库名称。当级别为 'repository' 时必填。(字符串,可选)
custom_properties_write - 设置自定义属性
OAuth 挑战作用域:repo, admin:org, admin:enterprise
enterprise:企业 slug。当级别为 'enterprise' 时必填。(字符串,可选)
level:自定义属性的管理级别:
org:组织名称。当级别为 'organization' 时必填。(字符串,可选)
owner:仓库所有者。当级别为 'repository' 时必填。(字符串,可选)
properties:要创建或更新的自定义属性。在仓库级别,每个项分配一个值('property_name' 和 'value');在组织和企业级别,每个项定义模式('property_name' 和 'value_type',以及可选的定义字段)。(对象数组,必填)
repo:仓库名称。当级别为 'repository' 时必填。(字符串,可选)
repository_ruleset_read - 读取仓库规则集
OAuth 挑战作用域:repo, read:org, read:enterprise
actor_name:用于筛选规则套件的 GitHub 用户账户句柄。由 'list_rule_suites' 方法使用。(字符串,可选)
branch:分支名称。'get_rules_for_branch' 方法必填。(字符串,可选)
enterprise:企业 slug。当级别为 'enterprise' 时必填。(字符串,可选)
evaluate_status:按规则集评估模式筛选规则套件。由 'list_rule_suites' 方法使用。(字符串,可选)
includes_parents:包含在更高级别配置且同样适用的规则集。默认为 true。由仓库级别的 'get' 和 'list' 方法使用。(布尔值,可选)
level:规则集配置的级别:
method:要执行的操作:
org:组织名称。当级别为 'organization' 时必填。(字符串,可选)
owner:仓库所有者。当级别为 'repository' 时必填。(字符串,可选)
page:分页页码(最小值 1)(数字,可选)
perPage:分页每页结果数(最小值 1,最大值 100)(数字,可选)
ref:用于筛选规则套件的引用名称(分支、标签等)。由 'list_rule_suites' 方法使用。(字符串,可选)
repo:仓库名称。当级别为 'repository' 时必填。(字符串,可选)
repository_name:用于筛选规则套件的仓库名称。由组织级别的 'list_rule_suites' 方法使用。(字符串,可选)
rule_suite_id:规则套件 ID。'get_rule_suite' 方法必填。(数字,可选)
rule_suite_result:用于筛选的规则套件结果。由 'list_rule_suites' 方法使用。(字符串,可选)
ruleset_id:规则集 ID。'get' 方法必填。(数字,可选)
time_period:用于筛选规则套件的时间范围。由 'list_rule_suites' 方法使用。(字符串,可选)
问题
来自真实用户的反馈,见证轩辕镜像的优质服务