如何在Windows 10上的GitBash环境中配置代理

时间:2019-04-12 17:02:47

标签: python-3.x windows proxy environment-variables git-bash

我在Windows 10上安装了Python 3.7.3,但是由于我公司的Internet代理,我无法通过PIP在Gitbash(Git SCM)中安装Python软件包。

我尝试通过以下方式为代理创建环境变量,但没有成功:

  • 导出http_proxy ='proxy.com:8080'
  • 导出https_proxy ='proxy.com:8080'

我找到了一个对我有用的临时解决方案:在.bashrc文件中插入以下别名:

  • 别名python ='winpty python.exe'
  • 别名pip ='pip --proxy = proxy.com:8080'

以上操作正常,但我正在寻找更好的解决方案,因此我无需为我使用的每个命令设置别名。我当时在考虑诸如环境变量之类的东西,但是还没有找到如何在Windows的git bash环境中进行设置。

您对此有想法吗?

2 个答案:

答案 0 :(得分:1)

首先,您不需要Git bash即可使用pip install Python模块。
仅有来自常规CMD的Git路径(要使用类似Linux的命令,加上curl,即使使用it is available on recent Windows 10,也要使用简化的PATH

set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\
set GH=C:\path\to\git
set PATH=%GH%\bin;%GH%\usr\bin;%GH%\mingw64\bin;%PATH%
set PH=C:\path\to\Python37
set PATH=%PH%;%PH%\Scripts

第二,您可以在公司环境中pip install,只要:

  • 您通过px访问HTTP代理服务器,该服务器是HTTP代理服务器,可以通过NTLM代理自动进行身份验证
  • 您对pip模块源使用并信任镜像替代方案。

关于genotrance/px,只需使用px --proxy=my.company.prpxy:<port> --save --config=/path/to/your/px.ini来运行服务

无需输入凭据(Windows日志/密码):代理使用您当前的登录会话。

设置您的环境变量以引用该代理:

set HTTP_PROXY=http://localhost:3128
set HTTPS_PROXY=http://localhost:3128

然后,这将起作用:

λ pip install -i http://pypi.mirror.frontiernet.net/simple --trusted-host pypi.mirror.frontiernet.net "ansible-tower-cli==3.2.1" --force-reinstall
Looking in indexes: http://pypi.mirror.frontiernet.net/simple
Collecting ansible-tower-cli==3.2.1
  Downloading http://pypi.mirror.frontiernet.net/packages/98/39/566f2dc628917e28d6600607cd0a533b9ed02395297363b2db827e59e488/ansible-tower-cli-3.2.1.tar.gz (153kB)
    100% |████████████████████████████████| 163kB 107kB/s

(使用不受贵公司阻止的任何pypi镜像=

答案 1 :(得分:0)

首先,您需要检查您背后的公司代理服务器是否为NTLM,请检查此https://stackoverflow.com/a/12476379/3313834可能会有帮助。