git 设置全局代理_git 代理配置

github 在国内访问一直不是很稳定,clone/push 等操作速度很慢。以下提供 https 和 ssh 这两种的访问方式的加速方法的配置,以及优缺点比较。

https

github 允许用户通过 https 端口使用 ssh,可以通过下面的指令测试

ssh -T -p 443 git@ssh.github.com

Hi username! You've successfully authenticated, but GitHub does not

provide shell access.

如果测试不通过,就需要修改配置文件 ~/.ssh/config,增加

Host github.com

Hostname ssh.github.com

Port 443

优点

http 和 https 代理是非常常见的,比如我一般都是对系统全局代理

配置比较简单

缺点

因为走的是 https 协议,那么在github认证时只能使用提供 username/password 的方式认证,如果要避免每次push时都输入密码,需要一些额外的步骤。Caching your GitHub password in Git - User Documentation

另外如果开启了 two-factor authentication,还需要提供 personal access token。Provide access token if 2FA enabled - User Documentation

ssh

前提:需要一个 socks5 代理

如果是直接通过 ssh 协议访问,则需要按照以下步骤配置

在 /usr/local/bin 增加一个文件,名为 git-proxy-wrapper,增加 +x 权限

ruhm@mac:~$ cat /usr/local/bin/git-proxy-wrapper

#! /bin/bash

nc -xlocalhost:1080 -X5 $*

注意,上面需要本机在 1080 端口打开 socks5 代理,端口可以自定义

~/.ssh/config 配置文件中内容如下

Host github.com

hostname github.com

User xxxxx

IdentityFile ~/.ssh/xxxxxx

ProxyCommand /usr/local/sbin/git-proxy-wrapper '%h %p'

优点

ssh 认证不需要提供用户名和密码

缺点

需要一个 socks5 代理

refs

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值