折騰了一晚上,真的有好多話不吐不快。
事情起因是最近校園網訪問github特別不穩定,幾乎完全不能用,所以想自己搞個代理加速一下。中間遇到了好多問題,更讓人頭疼的是,國內的博客環境太差了,搜索引擎能搜到的解決方案主要來源為CSDN(狗屎),博客園(勉強),簡書(垃圾),知乎(勉強)等,這些地方的內容大部分要么是復制粘貼,要么是似是而非不懂裝懂,復制粘貼導致的一個嚴重問題就是原先的解決方案的時效性被模糊了,00年的答案你20年復制一下,別人還以為你是最新的方案呢!
比較優質的博客很多都是自建的,但是一方面搜索引擎不容易檢索到,另一方面這些自建的博客訪問速度堪憂啊,大部分甚至國內直接訪問不了。
目的
- 提升瀏覽器訪問 github 的速度
- 提升 git 訪問 github 的速度
代理
使用 Clash 在各平台的客戶端,配置方面不需要操心,一般你的服務提供商會提供詳細的教程或者一鍵配置方案。
需要提的一點就是最好不要使用系統代理,一來大部分訪問需求都可以直連,流量省一點是一點;二來所有連接走代理總感覺不安全。
所以針對訪問 github 的需求,單獨配置瀏覽器和 git 的代理就可以了。
瀏覽器代理配置
-
瀏覽器。我用的是 Microsoft Edge。這里多說幾句,之前猶豫了好久最后還是從 chrome 轉到 edge 了,過程也非常簡單,書簽密碼之類的也可以一鍵轉移,edge 可以用微軟的賬戶在各個平台同步,還有自己的拓展應用商店,都不需要FQ,體驗真的很好。只不過目前 Linux 平台的版本還沒發布正式版,以后肯定能全面替代 chrome。
-
安裝 SwitchyOmega 拓展,在選項中先配置 proxy 代理服務器這一項,比如我的設置:
注意左下角選擇“應用選項”保存修改。 -
完成上一步修改后,我們在訪問 github 網站時,需要手動切換到 proxy 模式。有點麻煩,所以配置一下 auto switch 策略,比如我的配置:
然后我們選擇 SwitchyOmega 為 auto switch 模式,以后上網的時候除了 github 和 google 都可以自動選擇直連了。
Git 代理配置
這里推薦一個非常好的教程:一文讓你了解如何為 Git 設置代理
文中講到了我們使用 git 有兩種需求:https 和 ssh 協議,這兩種需求如何配置代理,上文都給出了答案。
- HTTPS 比較簡單:
git config --global http.proxy http://127.0.0.1:7890
# or
git config --global http.https://github.com.proxy http://127.0.0.1:7890
第二種是只針對 github 進行代理。
配置完成之后,我們 clone 別人倉庫的時候使用 https 協議就會非常快了。
- 然后 ssh 部分就有問題了,我是在 Windows10 + wsl1 的環境下配置的,結果 ssh 那部分死活就是不成功。
之前網上的 git 教程在講到配置自己項目的 github 遠程倉庫時,都是讓大家用 ssh 協議,似乎 push/pull 只能用 ssh 協議似的,但其實不是,用 HTTPS 協議同樣可以完成所有的任務,尤其 ssh 又搞不定的時候!所以這里我直接放棄 ssh 的方案了,這樣反而簡單了。
具體方法再給一個教程:把你的github操作從ssh轉成https
修改自己遠程倉庫的地址:
git remote set-url origin https://xxxxx #your https repo url
配置 HTTPS 免輸入密碼:
git config --global credential.helper store
總結
希望自己以后也能成為大佬,多看官方文檔,少查低可信度的博客。