检查 GitHub 是否被组织网络阻止

Checking if GitHub is blocked by organisation network

该组织最近推出了一些 IT 更新 - 将我们所有的 PC 升级到 Windows 10,还审查并更新了他们的安全、防火墙等。

这不是我的工作,所以不知道具体做了哪些更改。

我使用 Git Bash 从 GitHub 克隆了一个 repo,并配置了我的用户详细信息。

git clone https://github.com/.../... .git
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com

我可以将文件添加到暂存区,提交 - 一切似乎在本地运行良好。我什至可以将远程所做的更改提取到我的本地存储库。

但是,当我推送时,几乎没有发生任何事情,它挂起了。

git push -u origin main --verbose
Pushing to https://github.com/.../...

我必须退出 CTRL+C

当我尝试在本地初始化一个存储库并将其推送到 GitHub 上的空白存储库时,也会发生同样的情况,例如 https://docs.github.com/en/github/importing-your-projects-to-github/importing-source-code-to-github/adding-an-existing-project-to-github-using-the-command-line

根据文档,当组织网络管理员阻止某些流量时,可能会导致连接问题。 https://docs.github.com/en/get-started/using-github/troubleshooting-connectivity-problems

我的问题是;有没有办法不用问网络管理员就可以检查是否是这种情况?

The organisation has recently rolled out some IT updates

首先检查 Git 版本:如果作为滚动更新的一部分,您有 Git 2.32(最新版本),那么您将收到错误 , referring to issue 3264 or issue 3268

可能的解决方法:

  • 使用旧的凭据管理器:git config --global credential.helper manager
  • 切换到 SSH URL:git remote set-url origin git@github.com:<me>/<myrepo>
    (假设你 have set up a public key in your GitHub profile
    但这不太可能在公司环境中起作用,因为 SSH 出口经常被阻止。

但是如果您的 Git 版本是 而不是 2.32,那么这将是一个连接错误,通常是由于 HTTPS 代理未设置或设置不正确。


注意(2021 年 7 月):Git for Windows 2.32.0(2) 应该可以解决问题。