如何让 Git 使用 HTTP 代理服务器
2015-08-12 15:59
435 查看
因为我们的内部网络使用了代理,所以在 安装 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:// 的话直接把代理服务器加到环境变量就可以了:
如果是 git clone git:// 的话麻烦一些(可能有的 git 源不提供 http/https 的方式),需要先安装 socat,然后创建一个叫做 gitproxy 的脚本并填上合适的服务器地址、端口号等,最后配置 git 使用 gitproxy 脚本:
代理服务器无法通过 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
相关文章推荐
- 汇总一些网络相关的基础概念
- twisted08 分发动态处理的http服务器
- iOS项目开发实战——通过Http Get方式与服务器通信
- js深拷贝和浅拷贝----尊重原创,转自:http://www.cnblogs.com/yichengbo/archive/2014/07/10/3835882.html
- POJ 1273 Drainage Ditches(网络流模板)
- 网络篇----GET、POSt请求
- android 获取网络连接信息
- tcpdump抓包规则命令大全
- 自定义UI 网络 请求类的封装
- apache-httpd-server
- http://lamp.phpstudy.net/
- UNIX网络编程卷一:第十五章 Unix域套接字
- TCP流量控制与拥塞控制
- 37 网络相关函数(五)——live555源码阅读(四)网络
- iOS开发工具-网络封包分析工具Charles
- HttpClient 图解说明
- CentOS最小化安装后启用无线连接网络
- 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务(包括使用 RestTemplate 与 REST 服务进行通信)
- nginx http Access 模块指令
- tomcat 配置httponly