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

Posted

技术标签:

【中文标题】如何在 Windows 10 上将代理配置到 GitBash 环境中【英文标题】:How to configure a proxy into GitBash environment on windows 10 【发布时间】:2019-09-03 12:11:10 【问题描述】:

我在 Windows 10 上安装了 Python 3.7.3,但由于我公司的 Internet 代理,我无法在 Gitbash (Git SCM) 中通过 PIP 安装 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 环境中设置它。

你知道怎么做吗?

【问题讨论】:

【参考方案1】:

首先您需要检查您所使用的公司代理是否为 NTLM,检查此https://***.com/a/12476379/3313834 可能会有所帮助。

【讨论】:

【参考方案2】:

首先,pip install Python 模块不需要 Git bash。 只有 Git 路径(使用类似 linux 的命令,加上 curl,即使 it is available on recent Windows 10),来自常规 C​​MD,带有简化的 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 访问您的代理,这是一个通过 NTLM 代理自动进行身份验证的 HTTP 代理服务器 您使用并信任 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 镜像=

【讨论】:

为了避免太长的pip install -i xyz --trusted-host xyz,可以在 windows 上使用 pip 使用的 var env 来通知 pip localhost:3128 是 Web 代理? @user3313834 是的:我已经相应地编辑了我的答案

以上是关于如何在 Windows 10 上将代理配置到 GitBash 环境中的主要内容,如果未能解决你的问题,请参考以下文章

Github 代理

如何在 Windows 10 上将 Quazip 与 Qt 5.6、Qt Creator 一起使用?

如何在 Windows 上将 NPM 升级到特定版本 6.4.1?

如何在 Windows 10 上将 Xdebug 3 连接到 PhpStorm?

在 Windows 10 和 PHP7 上将 ZeroMQ PHP 扩展添加到 XAMPP

如何在 Windows 上将现有密钥添加到 openssh?