輕鬆解決Github連接緩慢、圖裂問題

1 簡介

  gayhub(誤)github作為全世界最大的開源程式碼庫以及版本控制系統,是用來託管項目以及學習開源技術非常好的平台,是我心中最好的學習網站,我們公眾號的眾多技術文章對應的數據和程式碼也都一直託管在github上。

  但熟悉github的朋友應該都被其越來越慢的連接速度,以及「全員圖裂」所困擾:

圖1

  本文就將參考github倉庫(//github.com/521xueweihan/GitHub520),教大家如何在不kexue上網的前提下,簡單幾步解決github訪問緩慢已經各種圖裂的問題。

2 通過修改本地hosts文件加速github

2.1 手動修改更新

  首先我們需要找到自己設備上的hosts文件,不同的平台其存放路徑各不相同,主要的平台hosts文件所在路徑如下:

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

  以Windows為例,按照上面的說明,進入``C:\Windows\System32\drivers\etc目錄,找到hosts`文件:

圖2

  這是一個無拓展名的文件,我們可以使用記事本、notepad++等文本編輯器來打開它,將下面的內容(這部分內容會自動更新,)複製,並粘貼到hosts文件的最後:

# GitHub520 Host Start
185.199.108.154                                   github.githubassets.com
199.232.68.133                                    camo.githubusercontent.com
199.232.68.133                                    github.map.fastly.net
199.232.69.194                                    github.global.ssl.fastly.net
140.82.113.3                                      github.com
140.82.112.5                                      api.github.com
199.232.68.133                                    raw.githubusercontent.com
199.232.68.133                                    user-images.githubusercontent.com
199.232.68.133                                    favicons.githubusercontent.com
199.232.68.133                                    avatars5.githubusercontent.com
199.232.68.133                                    avatars4.githubusercontent.com
199.232.68.133                                    avatars3.githubusercontent.com
199.232.68.133                                    avatars2.githubusercontent.com
199.232.68.133                                    avatars1.githubusercontent.com
199.232.68.133                                    avatars0.githubusercontent.com
# GitHub520 Host End
圖3

  如果保存時需要管理員許可權,按照提示以管理員方式重新打開再保存即可,正常情況下在保存退出後會立即生效,如果依然載入不出圖,可以根據自己系統的不同來執行對應的命令刷新DNS重啟機器即可:

  • Windows:ipconfig /flushdns
  • Linux:sudo rcnscd restart
  • Mac:sudo killall -HUP mDNSResponder

  接下來我們來看看這種方法的效果如何,在遵循上述流程修改好hosts文件之後,重新打開圖1對應的README頁面:

圖4

  O(∩_∩)O哈哈~,這時我們成功地載入出了原本裂掉的圖,但這種方式麻煩的地方在於當你配置好hosts之後的確是可以正常訪問github的,但一旦你某天訪問github發現老毛病又出現了,就得重複一遍上述的過程,接下來我們來學習另一種能將上述過程自動化的方法。

2.2 利用SwitchHosts軟體自動更新hosts資訊

  SwitchHosts是一個用於快速切換hosts文件的開源軟體(//github.com/oldj/SwitchHosts),我們可以通過其官方提供的百度雲盤地址(//pan.baidu.com/s/1inED1)下載適合自己系統的版本。

  下載後直接正常安裝,接著以管理員身份打開,點擊左下角+新建hosts,再按照圖5配置好,設置自動刷新時間間隔為你覺得合適的,我選的1小時刷新一次,這樣每隔一小時SwitchHosts就會自動訪問URL並更新hosts資訊:

圖5

  點擊刷新按鈕刷新成功後,點擊OK創建完成。其中URL資訊是我將原始倉庫導入中國的碼雲平台後得到的可連接的地址(//gitee.com/cnfeffery/GitHub520/raw/master/hosts),因為原始倉庫中的URL為github源訪問不成功。

  創建完成後,把開關打開,讓SwitchHosts在後台靜靜的運行即可:

圖6

  完成後,保持軟體後台運行即可,之後訪問Github同樣解決了問題。

  以上就是本文的全部內容,如有疑問歡迎在評論區與我討論。

Tags: