ssh:无法解析主机名git:名称或服务未知致命:无法从远程存储库读取

ssh:无法解析主机名git:名称或服务未知致命:无法从远程存储库读取,git,gitlab,Git,Gitlab,在我从HTTPS切换到SSH以用于我的repo之后,我在推送到原始主机时收到此错误: ssh: Could not resolve hostname git: Name or service not known fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 我还将ssh添加到gitlab中。

在我从HTTPS切换到SSH以用于我的repo之后,我在推送到原始主机时收到此错误:

ssh: Could not resolve hostname git: Name or service not known
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我还将ssh添加到gitlab中。我该怎么办?

HTTPS URL提供了对您的存储库的轻松访问,无论是私有存储库还是公共存储库,即使您在防火墙或代理后工作。这是推荐的方法

另一方面,SSHURL使用安全SSH协议来访问存储库

回到您的问题,错误可能是由于配置不当。
git remote add
命令用于将您已经尝试过的新远程设备添加到存储库中。但是,从HTTPS切换到SSH url意味着您的远程源已设置为http url,并且您希望更改

因此,首先检查当前远程源所指的url:

$ git remote -v
如果它指的是HTTPS url,那么您必须使用

$ git remote set-url origin mySSH_url
命令将其更改为SSH url

现在,试试GitRemote-v,它将显示为源站配置的SSHURL

请确保在使用SSH URL时,您已经在GitLab/GitHub帐户上生成并将SSH密钥添加到
SSH代理

这是一篇关于如何更改远程url的非常好的文章


此外,您还可以了解有关使用哪个远程url的更多信息。

我遇到了相同的错误

更改
.gitconfig
.config/git/config
文件中的
[远程“源站”]
url

之前:

https://git@github.com:userName/repo.git

ssh://git@github.com:userName/repo.git

新建:


git@github.com:userName/repo.git

我的本地系统没有连接到VPN,因此出现了此错误。因此,这可能是除了上述答案之外的原因之一。

您是如何切换的?你能粘贴你使用的命令吗?这可能是我的输入错误:git remote add origin mySSH_url您是使用默认名称还是自定义名称生成ssh密钥的?如果是自定义的,您是否更改了url格式?您是否可以发布mySSH_url,除非它是机密的?我仍然认为你可能有一个打字错误,可能是格式错误或其他什么不!mySSH_url是正确的。我仔细检查了一下。我尝试删除当前的HTTPS源,然后添加一个带有SSH url的远程存储库。但我使用了你的解决方案,它也很有效。谢谢,实际上,我也在使用VPN,
git fetch
在终端中不工作,但我可以在浏览器中连接到私有bitbucket服务器。有趣/悲哀的是,这样一个简单的解决方案不会马上出现在我们的脑海中。我现在也是这样,同样的事情!重新连接到VPN解决了该问题。谢谢