【问题标题】:Cannot push to GitHub anymore from git via OS X terminal无法再通过 OS X 终端从 git 推送到 GitHub
【发布时间】:2018-02-23 09:49:23
【问题描述】:

从昨天开始,我不能再向 GitHub 推送任何东西了。我收到此错误:

fatal: unable to access 'https://github.com/foo/bar.git/': error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

虽然我知道这与 Github 的 weak cryptographic standards removal 有关,但我不知道如何为我解决此问题,因为他们的网站(请参阅链接)仅解决如何在某些客户端(Windows、Red Hat)下解决此问题我没有使用。我的环境:

OS X 10.8.5、git 2.2.1、OS X 的终端 v2.3

我不太清楚我的 git 是如何在我的环境中设置的,因为我刚开始使用 git 并且不知道我在做什么,之后我再也没有改变它,因为它一直工作到现在。到现在为止,推送,我只是使用命令git push,没有别的。

有谁知道我现在如何设置我的 git 环境,以便我可以再次推送?谢谢!

【问题讨论】:

    标签: git github terminal


    【解决方案1】:

    您使用的是非常过时的 OS/X。鉴于您可能对升级 OS/X 不感兴趣,您唯一的选择可能是获取新版本的 OpenSSL 和针对它编译的新 git。

    自制软件可以在 OS/X 10.8 上运行吗?也许是 MacPorts?其中之一可能会为您提供更新的版本,否则您可能必须手动编译这些包。

    【讨论】:

    • 我在 OS X 10.8 下设置了自制软件,效果很好。这是否意味着我必须通过自制软件更新 OpenSSL?然后我如何“针对它编译一个新的 git”?
    • 如果您正在运行自制软件,请尝试将 openssl 和 git 升级到最新版本。 homebrew 有两个包,所以应该不需要进一步编译。
    • 我将它们都升级了(OpenSSL 到 1.0.2m,git 到 2.15.0)。在终端中,它们仍然出现在旧版本中。也许它没有链接到 brew 版本?我现在已经通过 brew link --overwrite git 链接了 git,但 openssl 不起作用。错误:警告:拒绝链接:openssl 仅链接小桶 openssl 意味着您在使用 Homebrew 的 openssl 标头时可能最终链接到不安全、已弃用的系统 OpenSSL。相反,将完整的包含/库路径传递给您的编译器,例如:-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib 我能做什么?
    • 不确定,但此时我会尝试在自制项目中打开一个 github 问题。另外,您是否考虑过将您的 OS/X 升级到更新的版本?我认为你至少落后了 6 年?
    • 我现在意识到仅将 git 升级到 2.15.0 似乎已经解决了这个问题。现在我可以像以前一样再次推动。所以答案是通过自制软件升级 git 并确保终端链接到这个最新版本。谢谢!
    猜你喜欢
    • 2022-12-11
    • 1970-01-01
    • 2011-11-24
    • 1970-01-01
    • 1970-01-01
    • 2019-05-02
    • 1970-01-01
    • 2015-12-01
    • 2012-06-21
    相关资源
    最近更新 更多