我在代理下,我在相当长的一段时间内成功地推进。 现在我突然不能进入git了。 我已经设置了RSA密钥和代理,并仔细检查了它们,没有效果,git抛出了页面标题中显示的错误。
当前回答
执行:
nc -v -z <git-repository> <port>
你的输出应该是这样的:
"Connection to <git-repository> <port> port [tcp/*] succeeded!"
如果你得到:
connect to <git-repository> <port> (tcp) failed: Connection timed out
您需要编辑~/。ssh / config文件。添加如下内容:
Host example.com
Port 1234
其他回答
主要原因是公司最近安装的代理发生了变化,阻止了公司域以外的其他ssh连接。
我可以通过以下步骤成功连接:
仔细检查,这个问题是我所假设的 ssh -T git@github.com
它应该在一个超时中结束。
编辑本地远程URL
SSH配置——local -e
从
url = git@github。com: asheeshjanghu / Journal git。
to
url = https://github.com/asheeshjanghu/Journal.git
重要的一点是,在url中,你必须在2个地方改变。
从git@到https://,从github:username到github/username
最后通过git获取来验证
所以我也遇到了同样的问题(不是在代理之后),然后遇到了这个问题。下面是我解决问题的方法:
尝试运行ssh -T git@github.com,它确实超时了,但是添加-o KexAlgorithms=ecdh-sha2-nistp521成功连接(从一个半相关问题的答案中找到)。
为了永久地解决这个问题,我只是在我的~/.ssh/config的github.com下添加了一行KexAlgorithms=ecdh-sha2-nistp521。现在一切似乎都正常了。
我也有同样的问题,但我发现的答案是不同的,认为有人可能会遇到这个问题,所以这是我的解决方案。
我必须为端口22、80、443和9418列出2个ip白名单:
192.30.252.0/22 185.199.108.0/22
如果这些IP不能工作,这可能是因为他们更新了,你可以在这个页面上找到最新的。
在我的情况下,这个问题是由我前一天在路由器上更改的设置引起的。 所以在我的路由器上,我只需要将隔离设置恢复为禁用,它已经解决了我的问题。
对于我的情况,建议的解决方案都不起作用,所以我尝试自己解决,并解决了它。
对我来说,我在我的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之间的区别