天天看點

【Github】玩轉Github系列之二——史上最全Github加速手段加速方法彙總各種方法特點及适用場景參考資料

Windows系統問題解決方法備忘

  • 加速方法彙總
    • 鏡像網站
    • 檔案加速
    • GitHub raw 加速
    • GitHub + Jsdelivr
    • 二傳手-碼雲gitee中轉
    • 插件
    • host方式加速
      • 擷取Github官方位址
      • 修改host檔案:
      • 重新整理DNS緩存
    • 科學上網
      • 通過指令或配置檔案來設定git代理
      • proxychains
  • 各種方法特點及适用場景
  • 參考資料

加速方法彙總

鏡像網站

鏡像就是一個克隆版的 GitHub,你可以通路上面的鏡像網站,網站的内容跟GitHub是完整同步的,然後在這個網站裡面進行下載下傳克隆等操作。
  • https://github.com.cnpmjs.org/
  • https://hub.fastgit.org/

    上述兩個網站完全copy了github,界面和操作與原生github基本一樣,隻是通路速度快了很多。

以cnpmjs為例來說明具體操作:

或直接修改~/.gitconfig檔案,添加以下内容:

[url "https://github.com.cnpmjs.org/"]
	insteadOf = https://github.com/
           

檔案加速

Cloudflare Workers 對 github release 、archive 以及項目檔案進行加速
  • https://toolwa.com/github/
  • 打開你要下載下傳的 GitHub 倉庫頁面
  • 點選右側的綠色按鈕 “Code” > “Download ZIP”
  • 等浏覽器彈出下載下傳框後複制下載下傳框中的連結位址并粘貼到以上輸入框
  • 點選加速下載下傳
  • https://ghproxy.com/

基于cloudflare workers的GitHub檔案加速

支援頁面操作和指令行操作,指令行操作指令例子如下:

git clone https://ghproxy.com/https://github.com/stilleshan/ServerStatus
           
  • https://gh.api.99988866.xyz/
  • 基于cloudflare workers的GitHub檔案加速
  • 僅支援頁面操作,和toolwa大同小異,把github下載下傳位址複制過來即可。
注:https://ghproxy.com和https://gh.api.99988866.xyz都是示範網站,可以使用gh-proxy自己搭建環境。
  • zhlh6

    可利用該網站生成github加速連結,之後使用git clone下載下傳庫檔案。

GitHub raw 加速

  • GitHub raw 域名并非 github.com而是 raw.githubusercontent.com
  • GitHub 加速如果不能加速這個域名,那麼可以使用 Static CDN 提供的反代服務,将raw.githubusercontent.com 替換為 raw.staticdn.net 即可加速。

GitHub + Jsdelivr

  • Jsdelivr是在中國大陸唯一有 license 的公有 CDN
  • Jsdelivr 唯一美中不足的就是它不能擷取 exe 檔案以及 Release 處附加的 exe 和 dmg 檔案,也就是說如果 exe 檔案是附加在Release 處但是沒有在code 裡面的話是無法擷取的,是以隻能當作靜态檔案 cdn 用途,而不能作為 Release 加速下載下傳的用途

二傳手-碼雲gitee中轉

  • 原理就是可将github倉庫導入gitee中( fork倉庫),再從gitee下載下傳;
  • 具體操作見參考資料中的“GitHub倉庫快速導入Gitee及同步更新”部分;

插件

  • Fast-GitHub

    – 可直接內建到chrome等浏覽器中,非常友善。

    – 但僅限通過頁面下載下傳倉庫檔案的情況,對指令行等方式無效。

  • GitHub 加速腳本

    – 先安裝暴力猴,再安裝這個插件;

host方式加速

通過修改系統hosts檔案的辦法,繞過國内dns解析,直接通路GitHub的CDN節點,進而達到github通路加速的目的。不需要海外的伺服器輔助。
  • 大體操作思路

– 擷取GitHub官方CDN位址

– 修改系統Hosts檔案

– 重新整理系統DNS緩存

擷取Github官方位址

  • 一般方法,通過一些查IP位址網站(如ipaddress)查找
http://www.github.com.ipaddress.com/
           

一般需要查找一系列網址的IP,不隻是github.com的。

  • NB的方法

    從參考資料中github host中擷取最新github系列最新位址。

修改host檔案:

  • Windows下:
C:\Windows\System32\drivers\etc\hosts
           
  • Linux下:
/etc/hosts
           

重新整理DNS緩存

Windows下:

ipconfig /flushdns
           

Linux下,情況比較複雜,可參考後文參考資料。

科學上網

  • 額,具體的科學上網的方式略了,感興趣的可以私聊,這裡主要探讨基于科學上網的前提下,如何加速通路github。
  • 如果是app類代理,一般對網頁通路或指令行操作都生效的;
  • 如果隻是使用一個IP和端口的這種代理,則修改IE的代理可對網頁生效,對指令行則不是那麼容易的了:

通過指令或配置檔案來設定git代理

  • https模式:
git config --global http.proxy http://127.0.0.1:1235
git config --global https.proxy http://127.0.0.1:1235
           

或:

git config --global http.https://github.com.proxy http://127.0.0.1:1235
git config --global https.https://github.com.proxy http://127.0.0.1:1235
           
  • ssh模式
Host github.com
User git
HostName github.com
ProxyCommand nc -v -x 127.0.0.1:1235 %h %p
           

proxychains

  • 使用比較簡單,在以前的git指令前,增加proxychains4 即可:
proxychains4 git clone https://github.com/rofl0r/proxychains-ng
           

各種方法特點及适用場景

  • 使用鏡像網站、檔案加速等僅限于提升下載下傳速度,無法用于送出代碼;
  • 使用host檔案或科學上網,可用于提升上傳和下載下傳雙向速度;
  • 如果在安裝系統系統時,需要通路github下載下傳代碼、庫等,則應該考慮修改host檔案的方式或科學上網方式。

參考資料

  • GitHub倉庫快速導入Gitee及同步更新
  • 在 Linux/Unix/Mac 下清除 DNS 查詢緩存
  • github hosts1
  • github hosts2
  • ipaddress
  • Fast-GitHub插件Github庫
  • Fast-GitHub插件下載下傳
  • gh-proxy
  • zhlh6
  • gitclone
  • 暴力猴
  • Github 鏡像通路,加速下載下傳

如本文對你有些許幫助,歡迎大佬打賞:

支付寶及微信打賞方式