我所做的:我在Github上创建了一个远程存储库,我试图在我的本地机器上克隆远程存储库。克隆时,我提供克隆URL和目标文件夹。

但每次我尝试克隆,我得到这个错误:

错误:“致命:无法访问https://github.com/hyperion057/spring-repo.git/':无法解决主机:github.com”

我需要做什么才能连接到GitHub ?


当前回答

从这里的答案->我的解决方案是特定于Windows子系统Linux (WSL)用户。与代理相关的答案都与我的解决方案无关。

如果你不能运行ping命令。

# WSL
ping google.com

那么很可能您的/etc/resolve.conf文件已损坏。要修复这个问题,在一个WSL窗口中运行以下命令:

# WSL
sudo rm /etc/resolve.conf

然后以管理员模式打开Powershell终端运行

# Powershell
wsl --shutdown
Get-Service LxssManager | Restart-Service

这应该可以解决问题,可以通过再次运行ping命令来测试。

其他回答

192.30.252.128是github.com的当前IP,可以在本地DNS (Linux和C:\Windows\System32\drivers\etc\hosts)中设置。

在通过https克隆git存储库时,我遇到了这个问题的另一个版本:

致命:无法访问'https://GIT_USER:GIT_PASSWORD@github.com/organization/repo.git/':无法解析主机:GIT_USER

问题是密码中有限制字符,需要进行URL编码。此外,如果您使用2FA(双因素身份验证),则应使用个人访问令牌来代替密码。

搜索上面的错误条件会在谷歌上找到这个页面,所以希望这个答案能节省一些人的时间。

另一种可能是,我自己也遇到了这个问题。但那是在我安装了一个VPN之后(这是不相关的,正在运行)

关闭VPN,修复了这个问题。

声明一下,我在我的MacBookPro上运行“粘度”VPN

我想说的是,当我做布莱恩的解时

git config --global --unset http.proxy

确保退出并重新启动终端。我的问题直到我这么做了才解决。

如果你在Windows主机上使用wsl guest vm中的git,并连接到主机上的vpn来访问github,那么你可以在Windows主机配置中添加github的ip地址来临时解决这个问题。因为wsl2路由连接到vpn隧道有问题。 例如,在C:\Windows\System32\drivers\etc\hosts中添加如下行

# used from wsl, need update periodically
20.205.243.166  github.com
20.205.243.168  api.github.com