git clone永远挂在github上

rva*_*nge 37 git ssh github

当我在github 指南中关注第5点(测试一切)时,ssh命令也会永远挂起.根据指南,我应该收到一条消息"Github不提供shell访问".以下是我的输出来自ssh -vT git@github.com

debug1: Authentication succeeded (publickey).
Authenticated to github.com ([207.97.227.239]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LC_MESSAGES = en_US.UTF-8
debug1: Sending env LC_COLLATE = en_US.UTF-8
debug1: Sending env LANG = da_DK.UTF-8
debug1: Sending env LC_CTYPE = en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)

kev*_*rpe 40

GitHub提供了几种连接远程仓库的方法.我在一个繁重的防火墙后面.除了使用http(不是 https)之外,所有方法都会挂起.

例如,JavaHamcrest项目(匿名)提供:

您也可以尝试:

最后,使用GIT_TRACE=1和为UNIX命令添加前缀GIT_CURL_VERBOSE=1,并使用Gi​​t选项--verbose获得最大调试输出.

例: GIT_TRACE=1 GIT_CURL_VERBOSE=1 git clone --verbose http://github.com/hamcrest/JavaHamcrest.git

  • 似乎`http`(不是`https`)链接不再适用于`github`.即你的示例命令不起作用,因为它使用`http`方案. (2认同)

Hom*_*ani 20

在我的情况下,端口 22 被防火墙阻止,https如果启用了 2 因素身份验证,则克隆 via可能不起作用。而是编辑您的 .ssh 配置以使用另一个端口。在您的终端中:

nano ~/.ssh/config
Run Code Online (Sandbox Code Playgroud)

然后添加这个:

Host github.com
  Hostname ssh.github.com
  Port 443
Run Code Online (Sandbox Code Playgroud)

  • 只需节省我几分钟的时间来寻找解决方案。谢谢!!! (2认同)

chr*_*sen 14

尝试使用HTTPS而不是SSH.端口22可能被防火墙阻止.

例如,而不是:

git clone git@bitbucket.org:repo-owner/my-project.git
Run Code Online (Sandbox Code Playgroud)

通过连接HTTPS:

git clone https://username@bitbucket.org/repo-owner/my-project.git
Run Code Online (Sandbox Code Playgroud)


rva*_*nge 12

我想我发现了错误.我正在使用的WiMAX路由器混淆了SSH.尝试另一个互联网连接后,它顺利进行.WiMAX路由器被称为"Alvarion",根据丹麦谷歌集团的说法,路由器中的NAT实施已被破坏:http: //groups.google.com/group/openspaceaarhus/browse_thread/thread/e99d96122a0522b7.

我已联系互联网供应商调查此事.如果他们证明它与路由器无关,我会在这里发布.

谢谢大家的意见,这让我意识到这可能是一个基础设施问题.

  • 你应该接受这个作为"正确的答案"并且支持其他有用的答案. (5认同)
  • 使用此路由器的公司(Skyline)不久后就停业了,因此我从未找到该路由器的解决方案。 (2认同)