第一次配置(失败)
某天心血来潮想在pycharm上安装copilot来帮助代码的阅读和编写,第一次在惠普笔记本上安装了两天,结果失败了,下面是当时的系统配置:
系统 | Windows 11 |
IDE | PyCharm 2023.5 |
GitHub Copilot 版本 | 1.5.4.5571 |
代理 | 使用 |
在Welcome to GitHub Copilot界面,点击 sign in to GitHub,需要登录github以进行身份验证,但始终显示 retrieving GitHub device code ,最后在右下角红字报错:Failed to initiate the GitHub login process. Please try again.
随后,我将 GitHub Copilot 的版本由 1.5.4.5571 降级到 1.5.2.5345,并配置了HTTP代理,主机名 127.0.0.1 和端口 7890,然后错误变成了:Sign in failed. Reason: Request signInInitiate failed with message: Client network socket disconnected before secure TLS connection was established, request id: 5, error code: -32603.
为了解决如上问题,我几乎尝试了搜索引擎上提供的所有方法:
- 将 GitHub.com 的 security certificate 保存为 github.pem,并将其添加到系统和环境变量中,
- 编辑了位于 C:\Windows\System32\drivers\etc 的 hosts 文件,添加了 github.com 和 api.github.com 的 IP 地址(使用在线查找工具获得)
- 将 PyCharm 服务器证书设置 server certificate settings 调整为“Automatically accept any certificate”
上面三种尝试都没有用,考虑到代理可能会干扰 TLS 连接,我关闭了代理并清除了主机名设置,又报了一个新错误:signInInitiate failed with message: connect ECONNREFUSED 124.220.157.23:4430, request id: 3, error code: -3260.
此时 ping github.com是成功的。
上述配置过程持续了两天,由于老是报错,于是更换了另一台电脑进行配置,很容易的就获得了GitHub授权登录,所以推测是设备环境或者网络的问题,但由于已经花费了两天,遂搁置。
第二次配置(成功):重新安装pycharm并删除注册表
昨天在pycharm上配置了通义灵码,因此突然想重新搞一下github copilot,所以在惠普笔记上重新尝试了一下,发现还是报错。
首先,准备卸载GitHub copilot 插件试一下,结果发现重新卸载插件会显示报错信息,提示无法卸载成功。
于是我直接把PyCharm 2023.5 卸载了,并重新下载了PyCharm 2024.2.0.1,然后发现打开之后各种配置都没有丢失,但是身份验证时报错“Sign in failed. Reason: Request signInInitiate failed with message: EditorFetcher request failed: Error processing request: null: undefined, request id: 20, error code: -32603”,更换全局/局部代理都不行。
注意此时的pycharm设置中的http代理是无代理配置,ping github.com是可以ping通的。
于是做了如下两个步骤:
Step1:查看了JetBrains目录下PyCharm 2023.5还有残留文件,完全删除
Step2:打开注册表
点击第二项,右键,点查找,输入github,得到:
将含有github的三个注册表删掉,然后重启电脑,最后就成功登录copilot了!!
这几个步骤我还真不确定是哪个起了作用,包括重新下载安装pycharm、删除没删干净的原pycharm文件、删除注册表.....好在最后成功了!!