跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

配置仓库、组织与企业排除规则

使用不区分大小写的路径模式,核对仓库引用、全文件系统规则与继承。

先确认当前客户端及模式支持内容排除,再配置路径。官方使用 fnmatch 风格的模式,匹配不区分大小写;不要将其他工具的 glob 优先级或否定规则直接套用。

仓库规则

仓库 Settings → Copilot → Content exclusion 中,在 Paths to exclude in this repository 输入每行一个路径,可用 # 注释:

# 排除仓库中的指定文件。
- "/src/some-dir/kernel.rs"
# 排除任何位置的同名文件。
- "secrets.json"
# 排除名称前缀或后缀匹配的文件。
- "secret*"
- "*.cfg"
# 排除 scripts 目录及其下级内容。
- "/scripts/**"

来自父组织或同一企业其他组织的继承规则会显示为顶部灰色区域,不能在仓库页面编辑。看到继承项不代表仓库管理员可以用本地规则将其取消。

组织规则

组织 Settings → Copilot → Content exclusion 的 Repositories and paths to exclude 使用“仓库引用 → 路径列表”结构。全局 "*" 可匹配 Git 仓库内外的文件系统路径:

"*":
  - "**/.env"
octo-repo:
  - "/src/some-dir/kernel.rs"
https://github.com/primer/react.git:
  - "secrets.json"
  - "/src/**/temp.rb"
git@github.com:*/copilot:
  - "/__tests__/**"
  - "/scripts/*"

这里 **/.env 包括仓库中的 .env,也包括文件系统根下的 /.env;该含义来自组织全局规则,不应把仓库规则直接当成全文件系统设置。

其他官方示例模式包括:{server,session}* 匹配指定文件名前缀,*.m[dk] 匹配 .md / .mk,**/package?/* 匹配相应目录中的直接文件,**/security/** 匹配 security 目录及下级内容。

仓库引用匹配

引用可使用 HTTP(S)、git://、user@host:path 或 ssh:// 格式。Copilot 能在本地 clone 协议不同时匹配同一仓库,引用中的 user@ 与 :port 不参与决定排除路径。

Azure DevOps 可使用新 dev.azure.com 或旧 visualstudio.com 主机格式,不依赖本地 clone 时用了哪种。

企业规则

企业 AI controls → Copilot → Content exclusion 使用与组织相同的仓库和路径结构。区别在适用用户:企业规则覆盖企业内 Copilot 用户,组织规则只覆盖由该组织授予席位的用户。

组织与企业所有者还可通过官方 REST content exclusion management 接口管理规则;此配置文章没有展开完整 API schema,本页不推测请求体或权限参数。

完成修改后按生效测试验证,不只检查 YAML 是否可解析。