【问题标题】:GitHub - failed to connect to github 443 windows/ Failed to connect to gitHub - No ErrorGitHub - 无法连接到 github 443 windows/ 无法连接到 gitHub - 没有错误
【发布时间】:2013-08-23 18:29:28
【问题描述】:

Q - 我安装了 git 来获取最新版本的 Angular。当我尝试运行时

git clone https://github.com/angular/angular-phonecat.git

我无法连接到 github 443 错误

我什至尝试过

git clone git://github.com/angular/angular-phonecat.git

这给了我连接失败没有错误信息。

我在公司防火墙后面。当我转到control panel->Internet Options -> connections -> LAN setting 时,我看不到我的代理详细信息。 IT 人员不会与我共享代理信息。我不知道该怎么办??

我终于成功了。我将更新我采取的程序,以便 只是想编译我为使其工作而执行的所有步骤

【问题讨论】:

  • 查看这个问题,了解如何在 Windows 上使用 git 设置代理 stackoverflow.com/q/16153450/579234
  • 我意识到,如果您只是通过终端推送请求向 github 发送垃圾邮件,也会发生这种情况。是的,我在不自觉地发送垃圾邮件时意识到了这一点。编辑:它与代理设置无关,但您仍然会收到 443 错误。
  • 如果你有 socks5 代理,只需使用git config --global http.proxy 127.0.0.1:1080,其中 127.0.0.1 是代理 URL,1080 是端口。

标签: git github


【解决方案1】:

我做了以下步骤

  1. Google 错误

  2. Got to SO Links(here, here) 建议同样的事情,我必须更新 Git Config 以进行代理设置

  3. 该死,无法从控制面板看到代理信息。 IT人一定把它藏起来了。我什至无法将设置更改为不使用代理。

  4. 找到this wonderful tutorial 查找您连接到的代理

  5. 通过以下命令更新了 git config 中的 http.proxy

    git config --global http.proxy http[s]://userName:password@proxyaddress:port
    
  6. 错误 - “无法解析代理 some@proxyaddress:port”。原来我的密码中有一个@ 符号。

  7. 将密码中的@编码为%40,因为git将代理设置按@分割

  8. 如果您的用户名是电子邮件地址,其中包含@,也将其编码为%40。 (见this answer

     git config --global http.proxy http[s]://userName(encoded):password(encoded)@proxyaddress:port
    

呸!成功了!

注意 - 我只是想为像我这样的人回答这个问题,他们会来寻找答案:D

【讨论】:

  • 这个编码是怎么做的。请把http://johndoe:f@tm@n@example.com:80 翻译成编码版本好吗?最后一个@ 不需要编码
  • 旁注:使用 @ 从 url 拆分凭据并不是 github 独有的。这实际上是part of the url standard
  • 除非您的代理需要用户名和密码,否则您不需要“userName:password@”部分。
  • @Anand 但我什至不在代理服务器上,那么我应该如何解决这个错误?我在代理服务器中放了什么?我没有使用任何代理
  • @Anand。谢谢你的解释。我的密码中有一个 @ 符号,您的详细说明对我有帮助。
【解决方案2】:

我明白了:

git config --global http.proxy http://{domain}\\\{username}:{password}@{proxy ip}:{proxy port}

git config --global http.sslverify false

【讨论】:

  • 两个斜线对我来说不是三个:{domain}\\{username}
【解决方案3】:

如果您所在的国家或工作环境屏蔽了 Github 等网站。

然后你可以建立一个代理,例如使用xxnet,它是免费的,基于谷歌的GAE,可用于Windows / Linux / Mac

然后为git设置代理地址,例如:

git config --global http.proxy 127.0.0.1:8087

【讨论】:

    【解决方案4】:

    我的问题已经用这个命令解决了

    git config --global http.proxy http://login:password@proxyServer:proxyPort
    

    【讨论】:

      【解决方案5】:

      我在使用时遇到了错误

      <git config --global http.proxy http://user:password@proxy_addr:port>
      

      错误是配置文件无法识别,因为没有这样的文件。我将命令更改为

      <git config --system http.proxy http://user:password@proxy_addr:port>
      

      我在 Windows 7 命令提示符下运行 git。
      上述命令引用了GIT_HOME/etc/gitconfig中的配置文件。
      --global 选项没有。

      【讨论】:

        【解决方案6】:

        如果你的 git 已经设置好了,而你只是将该文件夹复制到其他位置,只需运行:

        git config --global http.proxy ""
        

        而且 git 会自行调整,之后,您可以再次拉动 :)

        【讨论】:

        【解决方案7】:

        (不是答案,而是一个非常相似的问题) 我在代理后面的 Windows 系统上安装了 Git Gui。从在 Windows 系统上运行的 Linux 虚拟机发出“git clone”是可行的,但 Git Gui 会产生标题中提到的 443 错误。

        要解决此问题,必须编辑 %USERPROFILE%\.gitconfig 以添加 [http] 部分:

        [http]
            postBuffer = 1000000000
            proxy = the.proxy.address:the.proxy.port
            sslcainfo = C:/Users/username/Documents/the.certificate.name.cer
        

        请注意,安全证书文件的路径已将其反斜杠 ('\') 替换为斜杠 ('/')。

        【讨论】:

          【解决方案8】:

          仅使用此命令即可修复我的问题:-

                >git config --global http.proxy XXX.XXX.XXX.XXX:ZZ
          

          其中 XXX.XXX.XXX.XXX 是代理服务器地址 ZZ是代理服务器的端口号。

          在我的情况下不需要指定任何用户名或密码。

          【讨论】:

          • 成功了!也支持socks5代理,我的cmd是git config --global http.proxy 127.0.0.1:1080
          【解决方案9】:

          ipconfig /renew - 为我解决了这个问题。

          【讨论】:

            【解决方案10】:

            在 SourceTree 中遇到同样的错误,如果您已经设置了代理设置,请转到 Tools>Options>Network 并检查 Add proxy server configuration to Git/Mercurial

            【讨论】:

              【解决方案11】:

              在 Windows 7 上将代理设置为全局配置将解决此问题

              git config --global http.proxy http://user:password@proxy_addr:port

              但这里的问题是您的密码不会被加密。希望这不会有太大问题,因为大多数时候您将是您 PC 的唯一所有者。

              【讨论】:

              【解决方案12】:

              在尝试花哨的东西之前,请尝试禁用防火墙和防病毒软件,看看它是否有效。那是我的问题。

              【讨论】:

                【解决方案13】:

                对我来说,除了 git 代理配置之外,我还必须设置 https_proxyhttp_proxy,然后才能正常工作。

                【讨论】:

                  【解决方案14】:

                  我正在使用 Tortoise Git,只需在设置中转到 Git 并将相同的设置应用于全局。申请并确定。为我工作。

                  【讨论】:

                    【解决方案15】:

                    (希望这个答案能帮助像我这样的人。)

                    我在 Windows 中使用 git for windows 时也遇到了同样的问题。

                    我照常设置代理设置:

                    git config --global http.proxy http://username:pass@proxy.com:port
                    

                    在我的情况下,用户名是电子邮件,所以它有一个 @ 符号。 将用户名中的@符号编码为%40后,问题解决。

                    因此,不仅要在密码中编码特殊字符,还要在用户名中编码。 (参考this answer的cmets)

                    【讨论】:

                    • 但是在添加 gobal 代理后,我的工作仓库拒绝连接,它没有连接 443 错误
                    【解决方案16】:

                    我在与公司代理合作方面拥有丰富的经验。 配置通常与

                    配合得很好

                    但是如果你已经配置了代理并且无法使用 git(总是得到 443 错误)尝试检查你是否有一个 remote.origin.proxy 绕过了你的配置。

                    git config --list --show-origin
                    

                    如果您检查“remote.origin.proxy”是否配置为空值,请尝试取消设置或几乎使用您的公司代理设置它:

                    git config --add remote.origin.proxy "http://[yourproxy]:[yourport]"
                    

                    而且由于一些企业站点的证书不受信任,因此我建议您在使用 ssl 时避免检查证书:

                    git config http.sslverify false    
                    git config --global http.sslverify false
                    

                    【讨论】:

                      【解决方案17】:

                      在 Visual Studio 中转到

                      工具/NuGet 包管理器/包管理器控制台

                      输入 git config --global http.proxy http://xxx.xxxx.xxxx:Port

                      【讨论】:

                        【解决方案18】:

                        如果使用 SSH 配置文件,我的问题是 ~/.ssh/config 没有正确指定。来自Enabling SSH connections over HTTPS

                        Host github.com
                          Hostname ssh.github.com
                          Port 443
                        

                        【讨论】:

                          【解决方案19】:

                          如果你没有使用代理并且仍然面临这个问题,你应该使用下面的答案 -

                          git config --global --unset http.proxy

                          只需点击此命令,即可解决问题。

                          【讨论】:

                          • 还是不行
                          【解决方案20】:

                          我在 W10 中使用代理,git 2.32.0.window.1。这对我有用。

                          使用以下方法检查您的全局配置:

                          $ git config --global --list

                          您应该会看到user.nameuser.mail 等的设置。以下几行代码为我解决了这个问题:

                          http.proxyauthmethod=basic

                          http.proxy=http://username:password@proxyaddress:port

                          https.proxy=https://username:password@proxyaddress:port

                          请注意,这些是 http 和 https 协议的设置。

                          如果您没有看到两者,则必须设置它们。

                          在您的控制台中使用这行代码,用于两种协议:

                          $ git config --global https.proxy https://username:password@proxyaddress:port

                          $ git config --global http.proxy http://username:password@proxyaddress:port

                          如果您不知道代理和端口是什么,请在您的 Windows 系统(控制面板)中查找Internet Options(或属性)窗口菜单。

                          Internet Properties (window) → Connections (tab) → LAN Settings (button) → Proxy Server (section) → Advanced (button)

                          您应该能够看到您需要的信息(您的服务器),并准备好使用已经提到的 git 推荐。

                          【讨论】:

                          • 这给了我一个“'proxyaddress:port' 中不支持的代理语法。”
                          • @LukePerez 可能是您的系统特有的问题。如果您是反对答案的人,请删除它。它适用于我的系统。如果它实际上是一个错误的解决方案,我们需要更多的人报告它,一个案例是不够的。你能提供更多关于你的问题的信息吗?这对于找到解决方案很有用。
                          【解决方案21】:

                          选项 1:Windows 特定

                          Restart your machine
                          

                          选项 2:取消设置您的代理

                          git config --global --unset https.proxy
                          

                          【讨论】:

                            【解决方案22】:

                            在公司环境中,“我们的” git install 在其安装目录中使用了一个 gitconfig 文件,而不是标准的 C:\users.gitconfig 文件。

                            这告诉我 gitconfig 文件在哪里: git config --list --show-origin

                            通过添加这些来编辑文件:

                            [remote "origin"]
                                proxy = http://proxyserver:port
                            [http]
                                proxy = http://proxyserver:port
                            [https]
                                proxy = http://proxyserver:port
                            

                            另外,我的安装有

                            [credential]
                                helper = manager
                            

                            我现在可以访问外部存储库了。

                            【讨论】:

                              【解决方案23】:

                              我在防火墙后面使用 msys2 git,this solution 为我工作:

                              一个非常简单的解决方案:将 https:// 替换为 git://

                              【讨论】:

                                猜你喜欢
                                • 2015-06-02
                                • 1970-01-01
                                • 1970-01-01
                                • 2013-07-16
                                • 2011-05-16
                                • 1970-01-01
                                • 2015-10-21
                                相关资源
                                最近更新 更多