Git自动检测系统代理设置

Git自动检测系统代理设置,git,proxy,Git,Proxy,我经常更换具有不同代理设置的位置,或者简单地使用不同的代理从WiFi切换到有线连接 当我使用OsX时,很容易从一个网络配置切换到另一个网络配置。但是git在.gitconfig文件中有自己的设置,每次修改这个文件我都很累 有没有办法将代理(可能是从系统变量?)传递到.gitconfig文件,或者设置自动检测、系统代理或类似的设置?我也有同样的情况,很遗憾Git没有在OS X上使用系统代理设置。为了让这更简单,我已经创建了两个Bash函数,它们允许我为ssh、npm和代理环境变量等工具启用/禁用代

我经常更换具有不同代理设置的位置,或者简单地使用不同的代理从WiFi切换到有线连接

当我使用OsX时,很容易从一个网络配置切换到另一个网络配置。但是git在.gitconfig文件中有自己的设置,每次修改这个文件我都很累


有没有办法将代理(可能是从系统变量?)传递到.gitconfig文件,或者设置自动检测、系统代理或类似的设置?

我也有同样的情况,很遗憾Git没有在OS X上使用系统代理设置。为了让这更简单,我已经创建了两个Bash函数,它们允许我为ssh、npm和代理环境变量等工具启用/禁用代理配置

您可以在这里看到代码(作为我的Bash-it-fork的一部分):

下面是它的工作原理:

  • 我的bash配置文件包含像
    bash\u IT\u HTTP\u PROXY
    这样的变量
  • 我定义了一些函数,包括
    enable\u proxy
    disable\u proxy
    ,它们在调用时设置或取消设置环境变量。除此之外,他们还更新了我的
    ~/.npmrc
    文件和一些其他位置
在办公室工作时(我必须使用代理),我只需调用
启用代理
,在家工作时,我调用
禁用代理

类似的一组功能可以实现为单个脚本而不是函数,但是Bash-it框架有一种非常好的定义方式。它工作得非常好,而且我从不需要手动处理环境变量