zoukankan      html  css  js  c++  java
  • 如何让 Git 使用 HTTP 代理服务器

    因为我们的内部网络使用了代理,所以在 安装 OpenStack 基于 Web 的管理控制台 的时候有个小麻烦,我们的 http 代理服务器无法通过 git 协议下载 openstack-dashboard 所需的代码,也就是说可以 git clone https:// 这样克隆代码,但是不能使用 git 协议 git clone git://。糟糕的是在 openstack-dashboard/tools/pip-requires 里恰好用到了 git 协议,所以运行 openstack-dashboard 安装脚本的时候会因为网络无法连接 git:// 而中途失败。如何让 git 使用 http 代理服务器呢?

    如果是 git clone http:// 或 git clone https:// 的话直接把代理服务器加到环境变量就可以了:

    $ export http_proxy="http://username:password@squid.vpsee.com:3128/"
    $ export https_proxy="http://username:password@squid.vpsee.com:3128/"

    如果是 git clone git:// 的话麻烦一些(可能有的 git 源不提供 http/https 的方式),需要先安装 socat,然后创建一个叫做 gitproxy 的脚本并填上合适的服务器地址、端口号等,最后配置 git 使用 gitproxy 脚本:

    $ sudo apt-get install socat
    
    $ sudo vi /usr/bin/gitproxy
    #!/bin/bash
    
    PROXY=squid.vpsee.com
    PROXYPORT=3128
    PROXYAUTH=username:password
    exec socat STDIO PROXY:$PROXY:$1:$2,proxyport=$PROXYPORT,proxyauth=$PROXYAUTH
    
    $ sudo  chmod +x /usr/bin/gitproxy
    
    $ git config --global core.gitproxy gitproxy
  • 相关阅读:
    java volatile关键字解惑
    Java 反射
    拷贝源实体类到目标实体类中
    Bean和Map之间的转换
    DateUtils时间的封装
    HttpClient的代码封装,便于直接调用
    HttpClient语法
    LinkedHashMap+ConcurrentHashMap+hashMap的区别
    1006 Tick and Tick
    Event Flow
  • 原文地址:https://www.cnblogs.com/popsuper1982/p/3800557.html
Copyright © 2011-2022 走看看