我在代理下,我在相当长的一段时间内成功地推进。 现在我突然不能进入git了。 我已经设置了RSA密钥和代理,并仔细检查了它们,没有效果,git抛出了页面标题中显示的错误。
当前回答
将repo url从ssh更改为https对我来说没有多大意义。因为我更喜欢ssh而不是https,因为我不想放弃一些额外的好处。以上答案都很好,也很准确。如果你在GitLab遇到这个问题,请去他们的官方文档页面,并像那样修改你的配置文件。
Host gitlab.com
Hostname altssh.gitlab.com
User git
Port 443
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab
其他回答
我在我的服务器上有这个问题,它是用常规IP和故障转移IP设置的。此时,故障转移IP没有指向服务器。我必须从/etc/netplan/01-netcfg.yaml中的服务器配置中删除故障转移IP。将故障转移IP指向该服务器也可能解决了这个问题。
我也有同样的问题,但我发现的答案是不同的,认为有人可能会遇到这个问题,所以这是我的解决方案。
我必须为端口22、80、443和9418列出2个ip白名单:
192.30.252.0/22 185.199.108.0/22
如果这些IP不能工作,这可能是因为他们更新了,你可以在这个页面上找到最新的。
我的电脑在连接到Github时无法连接22端口。我用bitbucket从来没有这个问题。如果你同时拥有GitHub和bitbucket
Host bitbucket.org
Hostname altssh.bitbucket.org
Port 443
Host github.com
Hostname ssh.github.com
Port 443
ref
它基本上在443端口连接SSH,而不是22端口。
基本URL重写
Git提供了一种使用Git配置重写url的方法。只需发出以下命令:
git config --global url."https://".insteadOf git://
现在,就像变魔术一样,所有git命令都将执行git://到https://的替换
来源: git://协议被公司阻止,我怎么能绕过它?
对于我的情况,建议的解决方案都不起作用,所以我尝试自己解决,并解决了它。
对我来说,我在我的AWS EC2 UBUNTU实例上得到了这个错误,我所做的解决方法是编辑ssh配置(或者如果它不存在的话添加它)。
Sudo nano ~/.ssh/config
我添加了以下内容
Host github.com
Hostname ssh.github.com
Port 443
执行命令ssh -T git@github.com确认问题是否解决。
根据这个
有时,防火墙完全拒绝SSH连接。如果不能使用带凭据缓存的HTTPS克隆,则可以尝试使用通过HTTPS端口建立的SSH连接进行克隆。大多数防火墙规则应该允许这样做,但是代理服务器可能会干涉
希望这能帮助到其他和我有同样问题的人。
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式
- git pull -rebase和git pull -ff-only之间的区别