Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何解决;git pull,致命:无法访问';https://github.com...\';:“来自服务器的空答复”;_Git_Github_Ssh Keys - Fatal编程技术网

如何解决;git pull,致命:无法访问';https://github.com...\';:“来自服务器的空答复”;

如何解决;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

当我使用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: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

  • 如果已为VPN配置代理,则需要登录到VPN才能使用代理

  • 要在VPN之外使用它,请使用unset命令:

    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 proxyhttps\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文件,以便可以启动新存储库:

      rm-rf.git
      并重复步骤1

    步骤4

    • 在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