新Windows机器Git连接Azure DevOps远程间歇性重置故障求助
解决Windows上Git与Azure DevOps间歇性连接重置问题
强制Git使用TLS 1.2和Windows原生SSL库
连接重置常因TLS版本协商或SSL库兼容性问题导致,执行以下全局配置命令:git config --global http.sslBackend schannel git config --global http.sslVersion tlsv1.2用Windows自带的schannel库替代Git默认的OpenSSL,能避免系统网络层的冲突,同时强制使用Azure DevOps支持的TLS 1.2协议。
调大Git的HTTP超时与重试次数
针对随机的连接中断,延长超时时间并增加重试次数:git config --global http.lowSpeedLimit 0 git config --global http.lowSpeedTime 999999 git config --global http.retry 5如果只想针对单个仓库生效,去掉
--global参数,在仓库根目录下执行即可。关闭Windows自动代理检测
系统自动代理偶尔会干扰Git的网络连接,按以下步骤操作:- 打开「设置」→「网络和Internet」→「代理」
- 关闭「自动检测设置」
- 如果之前手动配置过Git代理,执行
git config --global --unset http.proxy清空配置
切换到SSH协议替代HTTPS
要是HTTPS问题反复出现,直接换SSH协议试试:- 生成SSH密钥:
一路按回车用默认设置就行,密钥会存在ssh-keygen -t ed25519 -C "your-email@example.com"C:\Users\<你的用户名>\.ssh目录下。 - 复制
id_ed25519.pub里的公钥内容,粘贴到Azure DevOps的「用户设置」→「SSH公钥」中。 - 修改远程仓库地址:
git remote set-url origin git@ssh.dev.azure.com:v3/<组织名>/<项目名>/<仓库名>
- 生成SSH密钥:
重置Windows网络栈
执行命令重置网络组件,解决底层网络冲突:netsh winsock reset netsh int ip reset执行完重启电脑再测试。
排查防火墙/杀毒软件拦截
暂时关闭第三方杀毒软件或防火墙,测试是否是它们拦截了Git的网络请求。如果确认是,把Git主程序(默认路径C:\Program Files\Git\bin\git.exe)加入信任列表。
内容的提问来源于stack exchange,提问作者Oleg Shirokikh
相关产品推荐
相关产品推荐

