Git 代理(Proxy) 配置

2023-09-21 18:18:02

某些情况下,我们需要通过代理才能访问特定网络环境下的git资源,git支持代理配置, 支持 http(s), SOCKS4/SOCKS5.

HTTP(S)

HTTP 代理配置格式如下:

git config --global http.proxy http://[proxy]:[port]

实际环境下, 其实我们大多数情况下,并不需要全部git资源都需要通过代理访问, 仅仅某些特定的git库需要通过代理设置,针对特定域名的代理配置就更有实际意义.

git config --global http.[URL].proxy  http://[proxy]:[port]

这里的URL指向特定git资源的地址,可以是域名,可以是IP,例如:

git config --global http.https://github.com/.proxy http://sample.com:8080

上述配置意为通过 http://sample.com:8080 代理访问 github.com .

如果要针对https配置独立的代理, 可以将配置设置为:

git config --global https.https://github.com/.proxy http://sample.com:8080

SOCKS(4/5)

如果代理服务使用SOCKS4/SOCKS5协议,基于SOCKS的配置如下:

git config --global http.proxy socks5://[proxy]:[port]
git config --global https.proxy socks5://[proxy]:[port]

验证代理配置

代理配置操作完后, 可以通过 git config --global -l 来查看完整的全局配置

git config --global -l

也可以通过查看用户目录下的 .gitconfig 来查看全局配置.

# cat ~/.gitconfig
[http "https://github.com/"]
    proxy = http://sample.com:8080

关闭代理配置

要取消代理配置可以使用 --unset 选项.

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

查看代理配置

要查看任何 git config 配置,可以使用 --get 选项

git config --get http.proxy
git config --get https.proxy

代理配置切换

如果需要经常需要切换代理配置的话, 尽量还是构建一个简单易用的脚本,方便我们快速操作, 这里搜集整理了一个 Shell 脚本.

添加一个git_proxy.sh脚本

# vim git_proxy.sh

添加如下内容:

#!/bin/bash
case $1 in
 
on)
git config --global http.proxy 'http://sample.com:8080' 
git config --global https.proxy 'http://sample.com:8080'
;;
 
off)
git config --global --unset http.proxy
git config --global --unset https.proxy
;;
 
status)
git config --get http.proxy
git config --get https.proxy
;;
esac
exit 0

这样就可以使用 git_proxy.sh on 、git_proxy.sh off、 git_proxy.sh status 命令来快速的开启、关闭、查看代理。

更多推荐

FPGA板卡启动以及LED灯带调试

环境配置软件:MobaXterm(free版本即可)下载教程参考:MobaXterm(终端工具)下载&安装&使用教程_蜗牛也不慢......的博客-CSDN博客Win32Disklmager下载教程参考:不分类工具:Win32DiskImager安装教程_win32disklmager安装教程_月挽的博客-CSDN博客

【计算机网络】——传输层

//图片取自王道,仅做交流学习一、传输层提供的服务物理层、数据链路层、网络层是通信子网。传输层:它属于面向通信部分的最高层,同时也是用户功能的最低层为应用层提供通信服务使用网络层的服务网络层提供主机之间的逻辑通信。1、传输层的功能:1.传输层提供进程和进程之间的逻辑通信(即端到端通信)。网络层提供的主机到主机之间的通信

交叉编译错误:小心符号链接

交叉编译在进行到链接环节时出现找不到库文件的错误,如下:一般来说,链接时出现库查找不到则需要将库路径添加到link_directories或者target_link_directories,这里说查找不到libblas.so.3和liblapack.so.3,那么查找这两个库的路径后发现,这个库路径是实实在在的添加到了

Hadoop知识点之Hadoop发展历程

一、Hadoop名字的起源Hadoop这个名字不是一个缩写,它是一个虚构的名字。该项目的创建者,DougCutting如此解释Hadoop:这个名字是我孩子给一头吃饱了的棕黄色大象命名的。我的命名标准就是简短,容易发音和拼写,没有太多的意义,并且不会被用于别处。小孩子是这方面的高手。Googol就是由小孩命名的。二、H

spring-boot---validation,参数校验,分组,嵌套,各种类型

写在前面:参数校验基本上是controller必做的事情,毕竟前端传过来的一切都不可信。但是每次if(StrUtil.isNotNull())啥的有时候多还难写。validation可以简化这一操作。文章目录项目构建问题展示validation使用快速入门注释Valid与Validated区别使用范围分组嵌套验证项目构

基于微信小程序的实验室预约管理系统设计与实现

前言💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗👇🏻精彩专栏推荐订阅👇🏻2023-2024年最值得选的微信小程序毕业设计选题大全:100个热门选

python/C++二分查找库函数(lower_bound() 、upper_bound,bisect_left,bisect_right)

二分查找是一种经典的搜索算法,广泛应用于有序数据集中。它允许在大型数据集中高效地查找目标元素,减少了搜索的时间复杂度。本文将介绍在C++和Python中内置的二分查找函数,让二分查找变得更加容易。c++lower_bound()、upper_bound定义在<algorithm>头文件中,lower_bound和upp

大数据分布式处理框架Hadoop

大数据是什么大数据容量常以TB、PB、甚至EB为单位,远超传统数据库的承载能力,无论入库还是查询都出现性能瓶颈。Hadoop是什么Hadoop是开源的分布式计算技术框架,用于处理大规模数据和实现分布式存储。Hadoop核心组件HDFS(HadoopDistributedFileSystem分布式文件系统):是Hadoo

学习Nano编辑器:入门指南、安装步骤、基本操作和高级功能

文章目录使用Nano编辑器入门指南引言1.1关于Nano编辑器1.2Nano的起源和特点安装Nano2.1在Debian/Ubuntu系统上安装Nano2.2在CentOS/RHEL系统上安装Nano2.3在其他Linux发行版上安装Nano启动Nano3.1命令行启动Nano3.2打开文件Nano的基本操作4.1光标

如何批量为文件夹命名

如果你想要命名一些这样名字具有规律性的文件夹,当文件的数量增多,一个一个命名是非常耗费时间的。很容易想到,如果使用EXCEL,只需往下拉,就能很轻松的拉出1到5。那么,我们如何利用EXCEL来对文件夹进行快速的批量命名呢?以上图为例子,人名可能是我们已知的,可以从表格直接复制过来。而客户名1到客户名5,我们可以直接使用

大数据Flink(六十四):Flink运行时架构介绍

文章目录Flink运行时架构介绍一、系统架构二、​​​​​​​​​​​​​​整体构成三、作业管理器(JobManager)四、任务管理器(TaskManager)Flink运行时架构介绍我们已经对Flink的主要特性和部署提交有了基本的了解,那它的内部又是怎样工作的,集群配置设置的一些参数又到底有什么含义呢?接下来我们

热文推荐