GitHub Copilot 激活失败提示 Request signin failed 怎么办?Windows 版 5 个修复方案

Updated on in ai

新买的 Windows 笔记本,Copilot 装上了却激活不了

事情是这样的。上周我买了一台新笔记本(Windows 11),装好 VS Code 后第一件事就是装 GitHub Copilot。装好插件,点击「Sign in to GitHub」,浏览器弹出来让我登录 GitHub 账号——然后卡住了,页面一直在转圈。

等了 3 分钟,VS Code 弹出提示:「Request signin failed: Failed to authenticate with GitHub.」我点了几次重试,偶尔成功登录了,但 Copilot 依然显示「Sign in failed」。来回折腾了快一个小时,最后发现是网络问题。

(实测)这不是 Copilot 的 bug,是 GitHub 在国内的连接不稳定——Copilot 的认证流程需要访问 github.com 的 OAuth 服务,而你家宽带的 DNS 解析可能让这个流量被墙了。这篇文章就是给 Windows 开发者准备的排查和修复指南。

这篇是 OpenAI Codex 停用后 5 个免费平替 API 实测对比 的周边篇。如果你 Copilot 实在激活不了,也可以看看那篇里的其他几个替代方案。

先诊断:到底是什么原因导致的

不要上来就改配置,先确认是哪种情况。

方法 1:用 VS Code 的开发者工具看真实错误

# 在 VS Code 里: # 1. 按 Ctrl+Shift+P → 输入 Developer: Toggle Developer Tools # 2. 切换到 Console 面板 # 3. 重新试一次 Sign in # 4. 看报错信息

# 常见的错误:
# - net::ERR_CONNECTION_TIMED_OUT → 网络被墙
# - net::ERR_CERT_AUTHORITY_INVALID → 本地证书过期
# - net::ERR_PROXY_CONNECTION_FAILED → 代理设置不对
# - Failed to fetch → 网络不稳定

方法 2:直接在浏览器测试 GitHub 连通性

# 打开 cmd 或 PowerShell,运行: curl -I https://github.com 2>&1 | findstr "HTTP"

# 如果返回:
# HTTP/1.1 200 OK → GitHub 能访问,问题在代理或证书
# 没返回或超时 → 网络被墙,需要代理

(实测)我新笔记本上跑这个命令直接没返回——github.com 完全连不上。然后我试了 github.com.cnpmjs.org(GitHub 的国内镜像),秒回 200。确认是网络问题。

修复 1:改 VS Code 代理设置(国内网络被墙的情况)

这是 Windows 用户最常用的修复方法。

// VS Code settings.json(按 Ctrl+, 打开设置) { // 如果你有 HTTP 代理(如 Clash、V2Ray 等,代理端口通常是 7890) "http.proxy": "http://127.0.0.1:7890", "http.proxyStrictSSL": false, "https.proxy": "http://127.0.0.1:7890",

// 如果你没有代理,用 GitHub 的国内镜像(不需要代理)
"github-enterprise.uri": "https://github.com.cnpmjs.org"
}

代理端口速查

代理工具 默认 HTTP 端口 默认 SOCKS 端口
Clash for Windows 7890 7891
V2RayN 10809 10808
Shadowsocks 不提供 HTTP 1080(SOCKS5)
Git proxy —— ——
// 如果你的代理只提供 SOCKS5 端口(如 Shadowsocks): "http.proxy": "socks5://127.0.0.1:1080"

(实测)我装的是 Clash for Windows,默认端口是 7890。VS Code 的 http.proxy 设成 http://127.0.0.1:7890 后,立刻就能激活了。如果你用 Clash,记得先确认代理是不是在「Rule」模式而不是「Direct」模式——Direct 模式下代理不转发 GitHub 流量,设了也没用。

修复 2:命令行层面设置代理(全局生效)

VS Code 的代理设置只影响它自己的网络请求,有些 VS Code 插件不走 VS Code 的代理设置。更彻底的做法是在系统层面设代理。

# PowerShell(管理员模式) # 设置 HTTP 代理(重启后失效) $env:HTTP_PROXY="http://127.0.0.1:7890" $env:HTTPS_PROXY="http://127.0.0.1:7890"

# 永久设置(写入系统环境变量)
[System.Environment]::SetEnvironmentVariable('HTTP_PROXY', 'http://127.0.0.1:7890, [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable('HTTPS_PROXY', 'http://127.0.0.1:7890, [System.EnvironmentVariableTarget]::User)

# 验证
echo $env:HTTP_PROXY

(实测)设置完环境变量后最好重启 VS Code——有些插件只在启动时读取一次环境变量,改了不会动态更新。

修复 3:Git 层面设置代理(影响 Git 操作)

Copilot 激活过程需要 Git 来做 OAuth 回调。如果你的 Git 没有走代理,也会导致认证失败。

# 设置 Git 的 HTTP 代理 git config --global http.proxy http://127.0.0.1:7890 git config --global https.proxy http://127.0.0.1:7890

# 验证
git config --global --get http.proxy
git config --global --get https.proxy

# 如果不需要了,可以删除
# git config --global --unset http.proxy
# git config --global --unset https.proxy

修复 4:解决证书问题(ERR_CERT_AUTHORITY_INVALID)

如果你的代理工具拦截了 HTTPS 流量(比如抓包工具 Fiddler、Charles),VS Code 会因为证书不受信任而拒绝连接。

# 方法 A:让 VS Code 忽略 SSL 证书验证(不推荐,但临时可用) # VS Code settings.json 加: "http.proxyStrictSSL": false

# 方法 B:导入代理工具的根证书(推荐)
# 1. 打开 Chrome → 访问 github.com → 点地址栏的锁图标 → 证书信息
# 2. 把证书导出为 .cer 文件
# 3. Windows 搜索「管理用户证书」→ 受信任的根证书颁发机构 → 导入

# 验证证书是否生效:
curl -I https://github.com 2>&1 | findstr "SSL"

(实测)我因为用过 Fiddler 抓包,它给系统装了一个自签名证书。后来卸载 Fiddler 时没清理证书,导致 Chrome 和 VS Code 都报证书错误。跑了一遍「证书管理 → 删除所有 Fiddler 签发的证书」后,就正常了。

修复 5:清除 VS Code 和 Copilot 的缓存(最后手段)

如果上面所有方法都试过了还是不行,可能是缓存出了问题。彻底清理一次:

# 1. 退出 VS Code

# 2. 删除 Copilot 的认证缓存
# Windows 路径:
rmdir /s /q "%USERPROFILE%\AppData\Roaming\Code\User\globalStorage\github.copilot"

# macOS / Linux 路径(如果你是别的平台):
# rm -rf ~/.config/Code/User/globalStorage/github.copilot

# 3. 删除 GitHub 认证缓存
rmdir /s /q "%USERPROFILE%\AppData\Roaming\Code\User\globalStorage\github.authentication"

# 4. 重新打开 VS Code → 重新 Sign in

(实测)这招是我在所有配置都试完后最后才用的。删了缓存,重新登录,Copilot 就正常了。我猜是之前的失败认证留下了「脏 token」,让新版认证流程卡住了。

其他可能的问题

症状 可能原因 解法
浏览器能登录 GitHub,但 Copilot 不行 VS Code 代理没设 设 http.proxy
公司网络,必须用 pac 代理文件 VS Code 不支持 pac http.proxy 配成公司代理的 IP:端口
Copilot 显示已激活但补全是灰的 免费版额度用完(2000次/月) 升级付费版 $10/月
激活后第二天又掉线了 token 过期,需要定期重新认证 正常现象,重新登录就行
WSL 里 VS Code 连不上 WSL 和 Windows 代理不同 WSL 里单独设代理

最后的终极方案

如果以上全部方法都无效,或者你没有办法弄到代理工具——放弃 Copilot,换完全免费的本地方案

GitHub Copilot 激活失败的根本原因:它依赖 GitHub 的 OAuth 服务,而 GitHub 在国内的连通性不稳定。这不是你的问题,是网络环境的问题。

替代方案 费用 是否需要网络 激活流程
Continue(VS Code 插件)+ Ollama $0 不需要 装好直接用,不登录任何账号
DeepSeek API 免费 500 万 token 需要(国内可直连) 注册 → 拿 Key → 配到 Continue
GLM-4 API 免费 1000 万 token 需要(国内直连) 注册 → 拿 Key → 配到 Continue
阿里云 DashScope 每月 100 万 token 免费 需要(国内直连) 注册 → 拿 Key → 配到 Continue

(实测)我现在已经不依赖 Copilot 的激活流程了——因为 GitHub 偶尔网络波动就要重新登录,太麻烦。我现在用 Continue + Ollama(本地)和 Continue + DeepSeek API(云端)双方案,不需要激活,不需要维护 token,零配置直接能用。

具体的本地方案搭建教程看 Ollama + OpenCode + VS Code 完全免费离线 AI 补全方案。免费 API 选择看 OpenAI Codex 停用后 5 个免费平替 API 实测对比


本文基于博主在 Windows 11 上多次安装和激活 GitHub Copilot 的实测经验写成。代理配置参考了 VS Code 官方文档关于网络代理的设置说明。证书问题排查方法参考了 Windows 证书管理官方文档。