Linux下纯命令设置Git代理

499 阅读2分钟

在Linux下使用Git的大多数场景是利用服务器进行开发,而多数的云计算服务器、各大平台的服务器是没有图形界面的,这一点对于很多习惯于Windows图形界面的开发者十分不友好,不过不影响会敲命令行很酷的事实。

然而,习惯了命令行开发却发现这是十分优雅的方式,简洁、直接。

对于使用Linux系统的开发者,最好能深刻理解Unix-like系统的设计原则:“Everything is a file”

接下来利用纯命令行配置Git

1. 获取Git

  1. 在Linux下,安装Git十分简单:

sudo apt install git

  1. 安装完成后初始化git(参考前面的小节),生成并添加ssh key

2. 配置代理

  1. 试一下克隆一个仓库,发现网速还是很慢,这时候需要配置一下代理,代理方式推荐socks5代理

  2. 获取最新版本工具到本地,可以更改对应的版本号

wget https://github.com/Dreamacro/clash/releases/download/v1.18.0/clash-linux-amd64-v1.18.0.gz

  1. 这一步可能因为GitHub网速的原因下载不成功,可以考虑将其下载到本地再上传到Gitee仓库,然后用Git克隆下来

  2. 下载完成后解压它:

gunzip clash-linux-amd64-v1.18.0.gz

  1. 将解压后的文件移动到 /usr/local/bin 目录(这个目录下的文件可被全局索引),并重命名为 clash:

sudo mv clash-linux-amd64-v1.18.0 /usr/local/bin/clash

  1. 添加执行权限:

sudo chmod +x /usr/local/bin/clash

  1. 创建一个文件夹用于存放配置文件:

mkdir -p ~/.config/clash

  1. 下载订阅内容并保存为配置文件

curl https:/your address.yaml > ~/.config/clash/config.yaml

  1. 这一步可能会失败,原因还是网速问题。解决方案还是先将文件下载好,通过Gitee上传

  2. 创建完成,启动代理工具并添加配置文件:

clash -d ~/.config/clash

  1. 配置Git代理,新建一个配置文件:

touch ~/.ssh/config

  1. vim打开它,写入代理配置,并保存退出。http和https端口是7890,socks5端口是7891
#Host github.com
#ProxyCommand connect -S 127.0.0.1:9090
Host github.com
    HostName github.com
    User git
    Port 22
    ProxyCommand connect -S 127.0.0.1:7891 %h %p
  1. 重启Git使配置生效,试一下从GitHub上克隆,速度起飞

  2. 配置http和https代理,添加配置文件 /etc/profile.d/proxy.sh, 内容如下:

export proxy=127.0.0.1:7890
export all_proxy=socks5://$proxy
export http_proxy=http://$proxy
export https_proxy=http://$proxy
  1. 使用sudo apt updatesudo apt upgrade发现速度很慢,原因是apt的代理配置不对,需要给仓库添加代理配置:对于apt,需要在/etc/apt/apt.conf.d/目录下创建或编辑一个配置文件(例如/etc/apt/apt.conf.d/10proxy),并添加以下内容:
arduinoCopy code
Acquire::http::Proxy "http://127.0.0.1:7890";
Acquire::https::Proxy "https://127.0.0.1:7890";

出现INFO[0000] Can't find MMDB,可使用手动下载

wget https://cdn.jsdelivr.net/gh/Dreamacro/maxmind-geoip@release/Country.mmdb -P ~/.config/clash/