如何解决;git pull,致命:无法访问';https://github.com...\';:“来自服务器的空答复”;
当我使用Git命令“Git pull”更新我的存储库时失败,消息如下: 致命:无法访问“…”:来自服务器的答复为空 我曾尝试使用GitHub应用程序,但请注意:如何解决;git pull,致命:无法访问';https://github.com...\';:“来自服务器的空答复”;,git,github,ssh-keys,Git,Github,Ssh Keys,当我使用Git命令“Git pull”更新我的存储库时失败,消息如下: 致命:无法访问“…”:来自服务器的答复为空 我曾尝试使用GitHub应用程序,但请注意: Cloning into 'renren_mobile'... warning: templates not found /Applications/GitHub.app/Contents/Resources/git/templates 2014-11-23 13:58:57.975 GitHub for Mac Login[659:1
Cloning into 'renren_mobile'...
warning: templates not found /Applications/GitHub.app/Contents/Resources/git/templates
2014-11-23 13:58:57.975 GitHub for Mac Login[659:11891] AskPass with arguments: (
"/Applications/GitHub.app/Contents/MacOS/GitHub for Mac Login",
"Username for 'https://github.com': "
)
2014-11-23 13:58:58.032 GitHub for Mac Login[660:11915] AskPass with arguments: (
"/Applications/GitHub.app/Contents/MacOS/GitHub for Mac Login",
"Password for '': "
)
fatal: unable to access '...': Empty reply from server
(128)
我解决了这个问题。我想这可能是因为https,但我不是很确定。 您可以将远程URL从HTTPS切换到SSH 1.详情请参考此链接: 我还必须配置ssh密钥 2.遵循以下原则:
我遇到这个问题是因为我更换了mac,但我做了数据传输,我想可能是因为关键原因。我用http替换了远程源的https部分,解决了这个问题。这也是一个解决办法。我想它将来可能会对某些人有所帮助。我解决了这个问题,将“http..”git url替换为“ssh..”
只需打开.git/config文件并将其复制到那里我就陷入了这个问题,直到我注意到我没有登录到我的VPN
git config --global --unset http.proxy
记住在VPN中设置代理。但是,在Jenkins安装中,我也遇到了同样的问题。尝试克隆返回的响应始终为:
stderr:fatal:无法访问'https://my.gitlab.server/group/repo.git/“:来自服务器的空回复
不幸的是,切换到http不是一个选项,所以我需要找到根本原因。原来Jenkins用户的全局配置中有一个http设置(可能是在我们在gitlab实例上运行自签名证书时添加的)。看看全局配置:
$ git config --global -l
http.sslverify=false
去掉这个就成功了
$ git config --global --unset http.sslverify
(看起来这也是一个输入错误,使用了正确的键http.sslVerify
)在Windows上:
转到Win->控制面板->凭证管理器->Windows凭证
搜索github地址并将其删除
然后尝试执行:
git push -u origin master
Windows将再次询问您的git凭据,并放置正确的凭据,仅此而已。我在此处尝试了大部分答案,但未能解决问题(在Windows 10上)
解决这个问题的方法只是使用以下方法将版本从
git version 2.8.1.windows.1升级到最新版本git version 2.10.1.windows.1
If取消设置
git config --global --unset-all https.proxy
不适合你
然后检查是否设置了环境变量http\u proxy和https\u proxy。使用此命令进行检查:-
env | grep -i proxy
如果此变量设置为某个值,则可以使用以下方法将其取消设置:-
https_proxy=""
我尝试了这里列出的一些技巧,但没有任何运气。看起来我的终端仿真器(iTerm2)或会话缓存了一些内容。当我从一个新的终端选项卡运行命令时,问题就消失了。您可以一步一步地尝试以下解决方案,其中一个应该适合您
我已经尝试了所有三个步骤,但是步骤4对我有效。因为我使用了两个不同的git帐户
第1步:
- git初始化
- git add README.md
- git提交-m“首次提交”
- git远程添加源
- git-push-u源主机
步骤2
- 如果您不在分支
git上,请检查当前分支git分支
签出分支机构名称
- 要创建新分支,请使用git checkout-b“新分支名称”
To
使用上述命令打开新分支
步骤3
- 在从用作模板的旧存储库开始创建新存储库的特殊情况下(如果不是您的情况,请不要这样做)。完全擦除旧存储库中的git文件,以便可以启动新存储库:
并重复步骤1rm-rf.git
- 在windows上,您可以通过以下方法尝试将写凭据或从控制面板中删除git凭据,并重复步骤1 转到Win->控制面板->凭证管理器->Windows凭证
我在将文件推送到我的私人bitbucket存储库时收到了相同的错误。由于一些奇怪的原因,请求无法发送,结果是一个空的回复!我再次尝试使用代理隧道(您可以使用任何其他VPN应用程序),到目前为止,问题已经解决。对于使用自己的git编译的类似Ubuntu的发行版:您可能缺少
libcurl4 openssl dev
apt安装libcurl4 openssl dev
然后重新配置,然后进行安装
git config--全局--取消设置http.proxy
git config--global--unset https.proxy我们有一个内部托管的git服务器(TFS),我设置了代理环境变量(HTTP\u proxy和https\u proxy)。在工作了一段时间之后,我突然开始犯这个错误 最后,我通过在NO_PROXY环境变量中设置服务器来修复它
我认为上面提到的从windows凭据管理器中删除git凭据的解决方案是可行的。基本上,它应该与缓存中的其他git凭据一起源代码。清除旧凭据将为覆盖新凭据铺平道路。我猜您的git远程url已设置为SSH。您可以将其设置为HTTPS:
git remote set-url origin https://github.com/YOUR_USERNAME/YOUR_REPOSITORY.git
重试此命令,系统会提示输入用户名和密码:
git pull
我也面临同样的问题,但我的问题是由于错误的凭证存储在我的钥匙链。因此,我通过从我的钥匙链中删除我的旧凭据来解决问题。错误可能是,计算机保存了git用户名和密码,因此如果您切换到另一个帐户,则会出现错误403