問題描述
最近使用git提交代碼發現總是報錯,查了很多資料,比如關閉或打開vpn,取消代理服務器,取消全局代理等都無法解決問題,最后找到直接找github的IP地址修改hosts文件后成功了。
使用git push 或 git clone 報錯信息:
fatal: unable to access 'https://github.com/xxxxx/xx.git/': OpenSSL SSL_read: Connection was reset, errno 10054
fatal: unable to access 'https://github.com/xxxxx/xx.git/': Failed to connect to github.com port 443 after 21035 ms: Timed out
之前遇到過類似的情況,使用取消全局代理的方法后可以提交了,然而今天卻不行了。。。
- 取消全局代理的方法
# 在git bash 中運行下面的命令即可
git config --global --unset http.proxy
git config --global --unset https.proxy
解決方法
- 打開 https://github.com.ipaddress.com/ 找到
IP Address
IP Address
140.82.114.3
- 打開https://fastly.net.ipaddress.com/github.global.ssl.fastly.net#ipinfo 找到
IP Address
IP Address
199.232.69.194
- 打開https://github.com.ipaddress.com/assets-cdn.github.com 找到4個
IPv4 addresses
assets-cdn.github.com resolves to 4 IPv4 addresses and 4 IPv6 addresses:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
2606:50c0:8000::153
2606:50c0:8001::153
2606:50c0:8002::153
2606:50c0:8003::153
- 找到系統目錄中的
hosts
文件並打開,具體目錄路徑為:C:\Windows\System32\drivers\etc
。將上面查詢好的ip和對應的域名添加到hosts
文件最下面。【注意:這里需要管理員權限才能修改hosts
文件,否則在下一步會報錯。因此如果當前不在管理員賬號(Windows系統默認是Administration),則需要先切換到管理員賬號再打開hosts
文件】
# github 注意下面的IP地址和域名之間有一個空格
140.82.114.3 github.com
199.232.69.194 github.global.ssl.fastly.net
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com
-
修改保存后,打開
cmd
命令行,輸入ipconfig /flushdns
命令刷新DNS
信息 -
執行成功后輸入
ipconfig/displaydns
查看設置的記錄。 -
執行
git clone
或git push
命令應該就好了