我在代理下,我在相当长的一段时间内成功地推进。 现在我突然不能进入git了。 我已经设置了RSA密钥和代理,并仔细检查了它们,没有效果,git抛出了页面标题中显示的错误。
当前回答
我也遇到了同样的问题,但找不到有效的解决方案。我在设置本地服务器时遇到了这个问题,git无法通过我的代理网络连接,但我的工作站可以。这是我运行命令时的输出 ssh -vT git@github.com
ubuntu@server:~$ ssh -vT git@github.com
OpenSSH_7.2p2 Ubuntu-4ubuntu2.8, OpenSSL 1.0.2g 1 Mar 2016
debug1: Reading configuration data /home/ubuntu/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to github.com [13.234.176.102] port 22.
因此,我尝试通过编辑配置文件~/使用通过HTTPS端口建立的SSH连接。Ssh /config但是没有效果。
Host github.com
Hostname ssh.github.com
Port 443
最后,我找到了这篇文章,解决并暴露了真正的问题。
# github.com
Host github.com
Hostname ssh.github.com
ProxyCommand nc -X connect -x <PROXY-HOST>:<PORT> %h %p
Port 443
ServerAliveInterval 20
User git
这是我的配置文件,现在git通过ssh工作得很好!
其他回答
原因可能是防火墙修改,因为您处于网络中。(在这种情况下,他们可能会故意封锁一些端口) 再次确认这是否是原因…做
ssh -T git@github.com
这应该会超时。 如果是这种情况,使用http协议而不是ssh 只需将配置文件中的url更改为http。 方法如下:-
git config --local -e
变更分录
url = git@github.com:username/repo.git
to
url = https://github.com/username/repo.git
上面的答案为我提供了解决这个问题所需的信息。在我的例子中,url错误地以ssh:///开头
要检查git配置中的url是否正确,请打开git配置文件:-
git config --local -e
检查url条目。它在开始时不应该有ssh:///。
不正确的条目:
url = ssh:///git@github.com:username/repo.git
正确的条目:
url = git@github.com:username/repo.git
如果您的url是正确的,那么下一步将是尝试上面建议将协议更改为http的答案。
执行:
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
对我来说,问题来自ISP方面。Internet服务提供商未启用端口号。所以让他们在我的网络上启用端口号,它开始工作。 仅用于测试:连接到移动热点并输入ssh -T git@bitbucket.org或git pull。 如果可以,请您的ISP启用该端口。
这个答案是基于@zundi对主要问题的评论(功劳应该归谁,谢谢zundi):
在您的移动设备上创建热点并连接热点 git推 关闭您的移动设备上的热点并重新连接到原来的网络 Git推送继续工作
我不知道为什么临时连接到一个热点神奇地“启动”原来的网络连接。
推荐文章
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- 如何忽略ansible SSH的真实性检查?
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?
- 撤销“git add <dir>”?
- 是否可以在不先签出整个存储库的情况下进行稀疏签出?