试图通过防火墙从github加载文件的速度太慢了。有任何解决方法的建议吗?
时间:2020-03-06 14:19:18 来源:igfitidea点击:
我有点犹豫要发布此信息,因为我不确定自己在做什么。任何帮助都会很棒。
我在装有防火墙/过滤器的计算机上。我可以轻松下载文件。但是,当我尝试从Github克隆文件时,计算机只是挂起了。什么都没发生。它会在文件夹中创建一个git文件,但不会加载关键文件。就上下文而言,我正在使用Rails应用,尝试加载Restful Authentication。
你们有没有处理这个?有关使克隆正常工作的任何建议?禁用防火墙可能是一种选择,但是如果我可以在不执行该过程的情况下做一些事情,我将不胜感激。
解决方案
git://协议使用端口9418,因此我们应确保防火墙允许对该端口的出站连接。
Github支持使用端口9418上的git协议和端口80上的HTTP进行克隆。使用后者非常慢(参考)。
我们应该在防火墙上打开端口9418,否则请使用HTTP克隆。
如果防火墙已不存在并且想要git的速度[更新:HTTP(S)如今几乎与ssh一样快,但是如果SSH是访问存储库的唯一方法,则此信息仍然有用] ssh访问没有防火墙的计算机,然后使用ssh隧道。
为此,请在一个窗口中运行它,并使其运行:
$ ssh username@some_host_not_firewalled -L9418:github.com:9418
然后,无论我们在何处使用前一个命令:
$ git clone git://github.com/jruby/jruby.git
改用这个:
$ git clone git://localhost/jruby/jruby.git
如果我们修改(全局)git config,则可以自动完成此翻译:
$ git config --global url.git://localhost/.insteadOf git://github.com/
或者...只需将" git://"前缀更改为" http://"
我正在使用git clone [email protected]:xxx.user / xxx.proj