V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
huajieyu
V2EX  ›  程序员

Git clone 国内下载慢问题,大家是如何解决的 2022-03-28

  •  
  •   huajieyu · 2022-03-28 10:44:34 +08:00 · 23143 次点击
    这是一个创建于 981 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近家里的电脑 neovim 插件版本升级,发现 clone 失败,搜了网上解决方案,修改 vim-plug 插件 github.com 为镜像地址,但是网上提供的镜像地址都不能用了,大家有什么好的解决方案吗,求救

    第 1 条附言  ·  2022-03-29 10:45:39 +08:00
    -------------------
    感谢各位大佬指教,因为我没有给终端配置代理的原因,昨天晚上配置完代理后,完美的下载速度,再次感谢各位大佬
    第 2 条附言  ·  2022-07-11 10:22:29 +08:00
    最近买了个小米路由器,刷了老毛子,从根源上解决了此问题。
    98 条回复    2022-07-06 17:46:22 +08:00
    Knuth
        1
    Knuth  
       2022-03-28 10:46:53 +08:00 via Android
    1.翻墙
    2.代理 cnpmjs gitee 等
    hsfzxjy
        2
    hsfzxjy  
       2022-03-28 10:47:38 +08:00 via Android
    梯子
    qwq11
        3
    qwq11  
       2022-03-28 10:48:25 +08:00   ❤️ 2
    git config --global http.proxy
    zhanlanhuizhang
        4
    zhanlanhuizhang  
       2022-03-28 10:48:59 +08:00
    翻墙
    larry123
        5
    larry123  
       2022-03-28 10:49:31 +08:00
    dev-sidecar?
    Kasumi20
        6
    Kasumi20  
       2022-03-28 11:02:14 +08:00
    cat .ssh/config
    ProxyCommand nc -x localhost:1080 %h %p
    retrocode
        7
    retrocode  
       2022-03-28 11:03:18 +08:00
    挂梯子比较一劳永逸
    XXWHCA
        8
    XXWHCA  
       2022-03-28 11:08:21 +08:00
    梯子才是终极解决方案,目前只有梯子在限制我的速度
    huajieyu
        9
    huajieyu  
    OP
       2022-03-28 11:09:07 +08:00   ❤️ 1
    @retrocode @hsfzxjy @Knuth 我梯子一直开着,这条路试过在我这里不行
    huajieyu
        10
    huajieyu  
    OP
       2022-03-28 11:09:40 +08:00
    @larry123 试过了不好用
    huajieyu
        11
    huajieyu  
    OP
       2022-03-28 11:10:32 +08:00
    @Kasumi20 @qwq11 好的感谢,你们两个方案我晚上回家试试呢
    totoro625
        12
    totoro625  
       2022-03-28 11:12:43 +08:00   ❤️ 10
    SSH 默认不走梯子
    1 、给终端配置代理
    2 、路由器挂代理
    3 、clash for Windows (支持 MAC )的 TUN 模式
    Scirocco
        13
    Scirocco  
       2022-03-28 11:15:09 +08:00
    @Knuth cnpmjs 现在是不是挂了?
    huajieyu
        14
    huajieyu  
    OP
       2022-03-28 11:15:24 +08:00
    @totoro625 终于知道原因,谢谢你
    yin1999
        16
    yin1999  
       2022-03-28 11:27:26 +08:00 via Android
    @Scirocco #13 官方下线了这个服务 https://github.com/cnpm/cnpm/issues/366
    qbqbqbqb
        17
    qbqbqbqb  
       2022-03-28 11:34:56 +08:00   ❤️ 1
    我也用 vim-plug 管理 vim 插件,直接写 Plug 'USER/REPO'的话应该走的是 HTTPS 协议吧,git config --global http.proxy 设置代理用梯子是有效的。
    guanhui07
        18
    guanhui07  
       2022-03-28 11:35:57 +08:00
    梯子
    hhhanako
        19
    hhhanako  
       2022-03-28 11:39:02 +08:00   ❤️ 1
    git clone 不用 https ,用 ssh 速度快很多,git clone [email protected]:xxx
    jdOY
        20
    jdOY  
       2022-03-28 11:40:10 +08:00   ❤️ 1
    用 gitee ,github 不知道什么时候就禁止国内使用,不如 gitee 来得省心
    mainjzb
        21
    mainjzb  
       2022-03-28 11:44:08 +08:00
    littlewing
        22
    littlewing  
       2022-03-28 11:44:56 +08:00
    梯子
    huajieyu
        23
    huajieyu  
    OP
       2022-03-28 11:46:08 +08:00
    @qbqbqbqb 已经帮我验证了呀,感谢哈哈哈
    huajieyu
        24
    huajieyu  
    OP
       2022-03-28 11:47:07 +08:00
    @jdOY 不确定 gitee 上的插件全不全
    huajieyu
        25
    huajieyu  
    OP
       2022-03-28 11:48:51 +08:00
    我平常用 vim 一般不用插件,但是 rust 不用插件的话废一半,没办法只能同步工作电脑上的配置来用,所以就遇到了这种问题,谢谢各位大佬指教
    srect2018
        26
    srect2018  
       2022-03-28 11:49:18 +08:00
    FastGithub ,挺方便。直接下载安装包,git push/clone 都能得到很好的解决。
    https://github.com/dotnetcore/FastGithub
    cco
        27
    cco  
       2022-03-28 11:51:28 +08:00   ❤️ 1
    @jdOY gitee 给你来个政策原因无法正常显示,因政策原因无法 push 代码。矮子里挑高个,还是得 github 。当然,自建更好。
    国内关键字比较多,指不定那个文档或者代码里出现一些铭感词就给你删了,或者屏蔽了。可能你没上过一些国内的论坛,真的是打 20 字以上就有可能发表不了,你得仔细阅读哪里违反关键字了,如果实在想体验,可以去完美游戏论坛感受一下。虽然 gitee 还不至于如此,但也不远了。
    ration
        28
    ration  
       2022-03-28 11:53:54 +08:00
    我一般是翻墙或者用 gitee 从 GitHub 上导入
    x86
        29
    x86  
       2022-03-28 11:58:54 +08:00
    有没有一种办法,用你上 v2 的梯子给终端配个代理
    jdOY
        30
    jdOY  
       2022-03-28 12:01:47 +08:00
    @cco 多点关键字肯定也好过像俄罗斯一样,哪天醒来直接代码项目都被吞了,还不让你用别的开源。虽然 github 还不至于如此,但也不远了。
    jdOY
        31
    jdOY  
       2022-03-28 12:03:32 +08:00
    @huajieyu 肯定是不全的,毕竟国内环境也就那样,也落后 github 不少,先尝试一下也没坏处
    HolaPz
        32
    HolaPz  
       2022-03-28 12:11:13 +08:00
    CEBBCAT
        33
    CEBBCAT  
       2022-03-28 12:12:07 +08:00 via iPhone
    路由器设置代理,咸鱼买个几十块的 newifi 就可以,接入网络的设备免配置就翻墙了
    AllenHua
        34
    AllenHua  
       2022-03-28 12:16:28 +08:00   ❤️ 2
    用梯子的 443 端口,别的都不稳,(除非你梯子不行

    $ cat ~/.ssh/config

    Host github.com
    Hostname ssh.github.com
    IdentityFile /xxx/.ssh/github_id_rsa
    User git
    Port 443
    ProxyCommand nc -v -x 10.10.10.1:7890 %h %p
    huajieyu
        35
    huajieyu  
    OP
       2022-03-28 12:23:26 +08:00
    @srect2018 试过这个方案了不行
    skiy
        36
    skiy  
       2022-03-28 12:37:14 +08:00 via iPhone
    git config --global url."https://gitclone.com/github.com".insteadOf https://github.com

    看看行不行。
    dustynight
        37
    dustynight  
       2022-03-28 12:44:40 +08:00
    弄下透明代理吧,我是用软路由。我弄软路由最大的动力就是受够了给各种各样的软件配置代理。
    brader
        38
    brader  
       2022-03-28 12:50:48 +08:00   ❤️ 4
    国内开发,在你一生中,你会遇到非常多的墙问题。根本就是学会 fq ,一劳永逸,永久杜绝这个问题。
    ps:低调使用
    leavic
        39
    leavic  
       2022-03-28 12:52:49 +08:00
    我还以为这是中国程序员基本技能
    skiy
        40
    skiy  
       2022-03-28 12:56:38 +08:00 via iPhone   ❤️ 8
    楼上的两位没看到 OP 说的“梯子一直开着”吗?梯子没开着、不会开,怎么上的 V2 ?问题没答复,抖机灵还不如果不回帖。
    qianxaingmoli
        41
    qianxaingmoli  
       2022-03-28 13:30:22 +08:00
    dr2009
        42
    dr2009  
       2022-03-28 13:33:15 +08:00
    梯子
    ruoxie
        43
    ruoxie  
       2022-03-28 13:43:31 +08:00   ❤️ 1
    .gitconfig 文件,配置 github 走梯子
    [http "https://github.com"]
    proxy = socks5://127.0.0.1:7890
    huajieyu
        45
    huajieyu  
    OP
       2022-03-28 13:56:00 +08:00
    @skiy 好的,大家的方案,我晚上都回家试试,非常感谢
    yunyuyuan
        46
    yunyuyuan  
       2022-03-28 14:01:59 +08:00
    proxychains
    cco
        47
    cco  
       2022-03-28 14:04:06 +08:00
    @jdOY git 去中心化的,github 不在了,本地仓库的代码又不会凭空消失,完全还能找其他的产品或者自建。即使发生🇷🇺事件,github 又不是没有🇷🇺国内的程序员就不会敲代码了,说白了,这只是一个顺手的工具,但不是必备的工具。有更好,没有也没关系。
    huajieyu
        48
    huajieyu  
    OP
       2022-03-28 14:05:00 +08:00
    @wleexi 不好意思这个方案可能不适合我的场景( vim-plug clone ),可能有利于其他的 github 访问场景
    JamesR
        49
    JamesR  
       2022-03-28 14:06:56 +08:00
    我 7×24 小时开着梯子,再不行,让 VPS 代下载即可。
    onice
        50
    onice  
       2022-03-28 14:14:17 +08:00
    Linux 终端下临时设置代理:export ALL_PROXY=socks5://127.0.0.1:1080
    Windows 下临时设置代理:set ALL_PROXY=socks5://127.0.0.1:1080

    以上设置均在命令执行当前终端有效,关闭终端失效。
    kevenli
        51
    kevenli  
       2022-03-28 14:17:02 +08:00   ❤️ 1
    https://ghproxy.com

    支持终端命令行 git clone , wget , curl 等工具下载.
    支持 raw.githubusercontent.com , gist.github.com , gist.githubusercontent.com 文件下载.
    注意:不支持 SSH Key 方式 git clone 下载.
    git clone
    git clone https://ghproxy.com/https://github.com/stilleshan/ServerStatus
    starqoq
        52
    starqoq  
       2022-03-28 14:34:04 +08:00
    出国,国外 Github 真的很快。
    各种镜像也不用设置了。
    我的各类技术都要生疏了。
    storyxc
        53
    storyxc  
       2022-03-28 14:41:05 +08:00
    梯子只能代理应用层的流量,终端的流量或者说系统级别的流量梯子是代理不了的。办法 12 楼已经说了,可以自己配置个终端 alias ,比如我用的 alias proxy_on='export https_proxy=socks5://127.0.0.1:10880',需要终端代理就执行下 proxy_on ,或者干脆点搞个软路由,所有流量都走软路由。
    RangerWolf
        54
    RangerWolf  
       2022-03-28 14:46:58 +08:00
    看了一下 似乎没有人提到 proxyjump 的功能。 我用国内的服务器来做代理,因为国内服务器的线路一般比我家的线路好一些,用这个来中转,速度快很多。
    https://www.jianshu.com/p/199013854070
    我是直接配置在~/.ssh/config 文件之中的 比较方便~ 当然,前提是你的 git clone 是走 ssh 协议。
    如果是 https 协议 各种 http 代理就很好用了
    dangyuluo
        55
    dangyuluo  
       2022-03-28 14:52:19 +08:00
    去年在国内的时候,搭建了旁路有,配置 SSH 走 socks5 代理,TCP/UDP 流量配置在旁路由上转发走代理,效果很好。
    AllenHua
        56
    AllenHua  
       2022-03-28 14:57:26 +08:00   ❤️ 2
    https://www.v2ex.com/t/843383 写了这篇,希望有用
    windirt
        57
    windirt  
       2022-03-28 14:59:58 +08:00
    surge 开增强模式
    XIU2
        58
    XIU2  
       2022-03-28 15:30:43 +08:00   ❤️ 3
    @JensenQian 没想到还有人推荐我的油猴脚本~

    @jdOY
    。。。
    Github 从来都没有屏蔽国内,你这是听谁说的,去年 3 月开会的时候 Github 域名就被 SNI 干扰了(就是封但是故意不封死的那种状态,和 Steam 商店域名一样),我当时还在 V2EX 发了篇文章呢,很有规律,很容易就能复现。
    /t/758568
    jdOY
        59
    jdOY  
       2022-03-28 15:37:36 +08:00
    @XIU2 没说现在封,难保以后国家关系恶化之后不会像现在这样所谓限制使用,有现成的例子了,居安思危还是有必要的
    huajieyu
        60
    huajieyu  
    OP
       2022-03-28 16:24:46 +08:00
    速度呀兄弟
    Uplay
        61
    Uplay  
       2022-03-28 16:24:57 +08:00
    @skiy 现在不需要梯子也可以进 V2EX 了
    skiy
        62
    skiy  
       2022-03-28 16:28:12 +08:00
    @Uplay 亲测,不行。中国移动宽带。
    t2jk4000
        63
    t2jk4000  
       2022-03-28 16:35:01 +08:00
    gitee 上的代码可靠么……
    skyoojaa
        64
    skyoojaa  
       2022-03-28 16:35:21 +08:00
    如果觉得配置代理麻烦的话,可以用 Netch + 机场。做本地全流量代理。这样操作简单。
    wonderfulcxm
        65
    wonderfulcxm  
       2022-03-28 16:45:37 +08:00 via iPhone
    不用 GitHub 的原因比较特别,并不是因为访问速度的问题,也不是因为哪天把中国用户全封号,而是它家的 webhook 访问我国内的腾讯云服务器的接口经常不可达,用国内 coding 之流可以正常触发。
    也就是说,不但出去访问 github 有墙,没想到从 github 过来的访问国内还有墙,而且如果你真在国内有服务器,服务依赖 github ,云服务器厂商也不允许你装梯子服务,哪怕只是客户端。
    ab
        66
    ab  
       2022-03-28 16:51:22 +08:00
    good job
    ProPh3t
        67
    ProPh3t  
       2022-03-28 17:01:57 +08:00
    如何(较)优雅地进行终端代理:
    alias fq="env https_proxy=http://127.0.0.1:12333 http_proxy=http://127.0.0.1:12333 ALL_PROXY=socks5://127.0.0.1:1080"

    eg: $fq curl -i google.com
    neowong2005
        68
    neowong2005  
       2022-03-28 17:16:03 +08:00 via Android
    你来 V2EX 不用梯子么
    hanleisky
        69
    hanleisky  
       2022-03-28 17:31:36 +08:00
    .gitconfig+.ssh/config
    Uplay
        70
    Uplay  
       2022-03-28 17:51:17 +08:00
    @skiy 江苏移动和联通测试可以
    yehoshua
        71
    yehoshua  
       2022-03-28 17:53:53 +08:00
    软路由+openclash
    xiaooloong
        72
    xiaooloong  
       2022-03-28 17:59:18 +08:00
    用 git over ssh ,再挂个 socks 代理。
    `.ssh/config`
    ```
    Host github.com
    User git
    ProxyCommand nc -x 127.0.0.1:1080 %h %p
    ```
    TimPeake
        73
    TimPeake  
       2022-03-28 18:00:32 +08:00
    clash tun 模式比较靠谱,直接全局代理接管所有流量
    Codelike
        74
    Codelike  
       2022-03-28 18:05:33 +08:00
    windows 梯子+Profixier
    darknoll
        75
    darknoll  
       2022-03-28 18:13:21 +08:00
    git config proxy 不行吗
    ganbuliao
        76
    ganbuliao  
       2022-03-28 18:23:42 +08:00
    Host github.com
    HostName github.com
    User git
    # 走 HTTP 代理
    # 走 socks5 代理(如 Shadowsocks )
    ProxyCommand nc -v -x 127.0.0.1:7890 %h %p%
    tflins
        77
    tflins  
       2022-03-28 18:31:52 +08:00
    写个命令别名,如 proxy ,unproxy , 分别中的设置临时的 http_proxy 和 https_proxy ,让终端走代码
    ```bash
    alias proxy="export http_proxy=http://127.0.0.1:1087;export https_proxy=http://127.0.0.1:1087;"
    alias unproxy="unset http_proxy;unset https_proxy"
    ```
    suxiaoxiann
        78
    suxiaoxiann  
       2022-03-28 18:59:38 +08:00
    科学上网
    Ackvincent
        79
    Ackvincent  
       2022-03-28 19:03:01 +08:00
    proxychains
    powerman
        80
    powerman  
       2022-03-28 19:26:32 +08:00
    都啥年代了 早就是家里透明代理 跟没墙一样的体验 出门 VPN 回家 啥都能访问,这才是 IT 人的标配网络
    powerman
        81
    powerman  
       2022-03-28 19:29:23 +08:00
    chnRoutes + iptables + ipset + v2ray 透明代理 出门 VPN 回家 标配无墙 啥都懒得配置
    chicbian
        82
    chicbian  
       2022-03-28 19:45:57 +08:00
    码云。
    HanMeiM
        83
    HanMeiM  
       2022-03-28 20:05:20 +08:00
    直接翻墙是最好的
    feather12315
        84
    feather12315  
       2022-03-28 20:57:04 +08:00 via Android
    软路由
    lopssh
        85
    lopssh  
       2022-03-28 22:34:37 +08:00
    梯子。。。
    christin
        86
    christin  
       2022-03-28 22:41:47 +08:00 via iPhone
    ghproxy.com 或者 GitHub 搜索 fastgithub
    yucongo
        87
    yucongo  
       2022-03-28 22:56:08 +08:00 via Android
    proxychains-ng
    jaggerjiang
        88
    jaggerjiang  
       2022-03-28 23:13:29 +08:00
    ssh proxy
    leaves98
        89
    leaves98  
       2022-03-29 00:11:00 +08:00 via Android
    clash for windows TUN 模式太好用了,git, windows terminal, wsl, vmware 全都给你自动代理,基本不需要手动配置,就是这么丝滑
    jessun1990
        90
    jessun1990  
       2022-03-29 00:15:49 +08:00
    我在三处都加了代理:
    1. ~/.config/git/config
    [http]
    proxy = http://127.0.0.1:1087
    [https]
    proxy = http://127.0.0.1:1087

    2. 在 git clone 的 所在的命令行使用
    export LOCAL_HTTP_PROXY='http://127.0.0.1:1087'
    export all_proxy='$LOCAL_HTTP_PROXY'; export http_proxy='$LOCAL_HTTP_PROXY'; export https_proxy='$LOCAL_HTTP_PROXY'; git config --global http.proxy '$LOCAL_HTTP_PROXY'; git config --global https.proxy '$LOCAL_HTTP_PROXY'
    该命令与 1 有重合部分

    3. ~/.ssh/config

    Host github.com
    HostName github.com
    User git
    ProxyCommand socat - PROXY:127.0.0.1:%h:%p,proxyport=1087

    Host githubusercontent.com
    HostName githubusercontent.com
    User git
    ProxyCommand socat - PROXY:127.0.0.1:%h:%p,proxyport=1087
    其中需要 socat 命令
    huangsen365
        91
    huangsen365  
       2022-03-29 02:16:34 +08:00 via Android
    zenlayer 的加速线路
    MrKrabs
        93
    MrKrabs  
       2022-03-29 09:31:48 +08:00
    那你怎么上 v2 的
    c4fun
        94
    c4fun  
       2022-03-29 10:18:58 +08:00
    如果没有科学上网的话,可以用国内的 jihulab.com ,相当于国内的 gitlab.com
    standin000
        95
    standin000  
       2022-03-29 10:32:10 +08:00
    vincent7245
        96
    vincent7245  
       2022-03-29 15:23:14 +08:00
    找个靠谱的机场,两三百块钱爽一年
    EricTing
        97
    EricTing  
       2022-03-31 15:59:11 +08:00
    用 cfworker 搭一个 reserve-proxy
    blackmao
        98
    blackmao  
       2022-07-06 17:46:22 +08:00
    使用梯子吧 12 块钱一个 https://www.xflash.pro
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1203 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:22 · PVG 02:22 · LAX 10:22 · JFK 13:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.