Git 仍在使用你以为已删除的代理
删除一项 Git 设置可能暴露另一个作用域或环境变量。追踪实际生效的值,而不要把 0 当作禁用标志。
http.proxy 是字符串。把它设为 0 可能让 Git 去联系一个名字字面为 0 的主机,而不是禁用代理。
先找出匹配的设置项及其作用域:
git config --show-origin --show-scope --get-regexp '.*proxy.*'检查系统、用户、仓库、include 以及 URL 特定的输入,还要看进程的真实环境。请把带有凭据的值保持私密。然后查询相关的 HTTPS 远程仓库:
git config --get-urlmatch http.proxy https://git.example/team/project.git如果检查只发现一条过时的、仓库本地的 http.proxy 设置项,就在那个预期的工作副本中运行下面的命令来删除它:
git config --local --unset http.proxy请使用实际报告出来的来源;这个本地示例不是清空用户或机器默认值的命令。在选择会一次性删除全部取值的操作之前,先检查多个值。
删除会暴露剩余的输入。本地 unset 可能暴露出用户级默认值,而删除用户级设置项也可能留下 URL 特定规则。相反,显式空值表达的是在受支持的 Git 配置中有意进行直接覆盖;这与撤回某一个来源是不同的策略。
把 core.gitProxy 和 SSH 路由分开。如果某个值又出现,就检查 include、启动器、IDE 和构建工具,并在预期的作用域内修正产生它的地方。重复执行选择查询和网络操作:正确选择并不能证明连通性,也不能证明后续的仓库认证。