Github配置:SSH和网络代理

Github配置:SSH和网络代理

  • Github的协议
    • Https协议
    • SSH协议
  • Github网络代理:解决clone和push速度慢的问题
    • Https设置
    • 配置SSH的授权文件和代理连接程序

Github的协议

先看Github下载代码仓的界面:
Github配置:SSH和网络代理_第1张图片
Github配置:SSH和网络代理_第2张图片
下载Github代码,可以使用SSH和HTTPS。

Https协议

一般情况下,HTTPS协议下载可以直接在Git Bash终端使用。但是,每次提交代码都需要输入账号和密码,比较麻烦。

SSH协议

总体而言,SSH协议下载的仓必须是属与下载者,而且还必须添加SSH-Key到Github。但是,每次提交代码都不需要输入账号和密码。分为如下两步(请自行百度,日后更新详细步骤):

  1. 本地机器生成SSH-Key,注意该Key与机器绑定,如果更换机器,需要重新生成;
  2. 添加本地生成的SSH-Key到Githuib个人设置界面

Github网络代理:解决clone和push速度慢的问题

本篇文章的目的在于配置Github的网络配置,由于网络代理和协议HHTPS和SSH相关。所以,开篇先介绍Https和SSH协议在Github的区别和场景。

本文目的在于记录和整理Github的网络配置,如果有任何问题,评论留言,作者及时回答。

本文Github配置的的前提:你懂的,你懂的,三次修改了;

Https设置

如果下载者使用图一下载代码仓,而且速度稳定的维持在20kb/s以下,设置如下命令:

git config --global http.proxy http://127.0.0.1:1080
git config --global https.proxy https://127.0.0.1:1080

注意

  1. 前后http和https需要对应
  2. 1080是本地代理端口
  3. 只针对HTTPS下载生效,SSH下载无效

下载完成以后,可以使用如下命令取消代理:

git config --global --unset http.proxy
git config --global --unset https.prox

题外话
其实,也可以编辑文件:C:\Users[**替换称自己的名字 **].gitconfig
至于文件内容的话,读者可以运行命令后实时查看,会有更加深刻的体会。

配置SSH的授权文件和代理连接程序

相当于HTTPS的网络设置,SSH的设置略显复杂,原理不说,具体步骤如下:

查看文件夹C:\Users[**替换称自己的名字 **].ssh 下是否存在config文件,如果没有,则创建,内容如下:

Host github.com
  User git
  Port 22
  Hostname github.com
  IdentityFile "C:\Users\[替换称自己的名字]\.ssh\id_rsa"
  TCPKeepAlive yes
  ProxyCommand "C:\Users\luopan\AppData\Local\Programs\Git\mingw64\bin\connect.exe" -S 127.0.0.1:1080 -a none %h %p

Host ssh.github.com
  User git
  Port 443
  Hostname ssh.github.com
  IdentityFile "C:\Users\[替换称自己的名字]\.ssh\id_rsa"
  TCPKeepAlive yes
  ProxyCommand "C:\Users\luopan\AppData\Local\Programs\Git\mingw64\bin\connect.exe" -S 127.0.0.1:1080 -a none %h %p

注意

  1. IdentityFile 对应的是SSH的授权文件,必须设置,而且设置必须对,否则下载失败;
  2. ProxyCommand 对应的是SSH的代理连接程序,使用绝对路径[一般位于Git安装目录之下,使用EveryThing搜索一下]
  3. -S 表示默认使用socks5
  4. %h 和%p分别表示Host和Port,占位符

最后使用如下地址测试:

 git clone [email protected]:nodejs/node.git

测试结果如下图:
Github配置:SSH和网络代理_第3张图片

你可能感兴趣的:(Android)