【问题标题】:How to configure a proxy into GitBash environment on windows 10如何在 Windows 10 上将代理配置到 GitBash 环境中
【发布时间】: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 环境中设置它。

你知道怎么做吗?

【问题讨论】:

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


    【解决方案1】:

    首先您需要检查您所使用的公司代理是否为 NTLM,检查此https://stackoverflow.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 是的:我已经相应地编辑了我的答案
      猜你喜欢
      • 2020-03-11
      • 2011-11-28
      • 2017-05-29
      • 2019-08-25
      • 2021-10-02
      • 1970-01-01
      • 2020-11-19
      • 2018-09-01
      • 2017-04-09
      相关资源
      最近更新 更多