为Git设置代理(zt)
来源:互联网 发布:网络喊麦最火的歌曲 编辑:程序博客网 时间:2024/06/06 05:23
0 0
- 为Git设置代理(zt)
- 为Git设置代理(zt)
- 为git设置代理
- 为GIT设置代理
- 为Git设置代理
- 为git设置代理
- 为Git设置goagent代理
- 为git设置HTTPS代理
- Ubuntu 代理上网设置(zt)
- linux下为git设置临时代理
- 为git设置http代理[GAE]
- 为 git 设置 http https 代理
- linux下为git设置临时代理
- 为git配置代理
- git设置http代理
- 取消Git代理设置
- git 代理设置
- git代理设置
- Lucene的IndexModifier方法
- linux 散知识点
- Java误区之长整除
- nyoj19 擅长排列的小明
- ViewPager实现导航页
- 为Git设置代理(zt)
- [LeetCode 160]Intersection of Two Linked Lists
- log4j.propertiesj配置
- Cocos2d-x下Lua调用自定义C++类和函数的最佳实践
- 运输公司对用户计算运输费用
- 深入理解Android之设备加密Device Encryption
- Rotate Array
- 深入理解Javascript之执行上下文(Execution Context)
- Log4j配置详解之log4j.xml
If you are using ubuntu, then do the following ...
Step 1 : Install corkscrew
Step 2 : Write a script named git-proxy.sh and add the following
Step 3 : Make the script executable
Step 4 : Set up the proxy command for GIT by setting the environment variable
Now use the git commands,such as
各种SCM工具下使用http代理下载源码
经常有使用SCM下载源码的必要,尤其是软件开发人员。但偶们的网络环境经常逼得我们不得不使用代理,或者是因为速度,或者是因为直连根本就不通。而且源码通常是零零碎碎的几千几万个小文件,不像一般的软件是单个的文件,一个下载工具即可搞定。
1,CVS
CVS使用代理非常麻烦,似乎不能用http代理(如果偶错了请提醒),而socks代理相当难找。好在这个东东已经慢慢变成了昨日黄花,我们不讨论它。
2,SVN
SVN比较方便,编辑~/.subversion/servers文件即可:
[global]
http-proxy-host = <代理的ip或域名>
http-proxy-port = <代理端口>
http-proxy-username = <用户名,如果需要的话>
http-proxy-password = <密码,如果需要的话>
3,HG
HG更简单,因为它使用的是http协议,一个命令解决:
export http_proxy=http://<用户名>:<密码>@<ip>:<端口>
4,Git
Git可以使用两种协议,git协议和http,如果是后者,那么办法跟HG一样,如果是git,比较麻烦,但也不是不可解决:
先去下载一个协议转换小工具:http://www.meadowy.org/~gotoh/ssh/connect.c
编译之:gcc -o connect connect.c
将生成的connect放到可执行文件路径中,如/usr/bin
然后创建一个使用代理的脚本,假设是http-proxy-gw,注意加上可执行属性,内容如下:
#!/bin/sh
# Filename: ~/bin/http-proxy-gw
# This script connects to an HTTP proxy using connect.c
connect -H http://yourproxyaddress:proxyport $@
最后,配置git:
git config --global core.gitproxy "http-proxy-gw for xxx.yyy"
后面的xxx.yyy是域名后缀,比如,下载linux源码就可以是设置为kernel.org
git的代理设置方法
在实验室想git点东东下来,折腾了会,算是基本可用了吧
man git-config 可以看到git支持的代理是依赖别的程序的
这里我使用的是一个别人写的代理小程序,见附件
配置步骤如下:
1. gcc -o connect connect.c
mv connect ~/bin
2. 设置一个wrapper
echo "/home/gigi/bin/connect -H proxy.bupt.edu.cn:8080 $@" >> ~/bin/proxy
chmod +x ~/bin/proxy
这里我使用的是学校的代理 proxy.bupt.edu.cn,端口是8080
connect这个小程序还支持socket代理,用法是connect -S host:port
3. echo "export CONNECT_USER=bergwolf" >> .bashrc
echo "export GIT_PROXY_COMMAND=proxy" >> .bashrc
connect程序从环境变量CONNECT_USER和CONNECT_PASSWORD
中读取用户名和密码,如果密码没有设置,在连接时会要求输入
GIT_PROXY_COMMAND是git默认使用的代理程序,也可以在.git/config中设置
到此git代理设置就完成了,试用一下:
[gigi-Ubuntu:bin]$git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
Initialized empty Git repository in /home/gigi/bin/e2fsprogs/.git/
Enter proxy authentication password for bergwolf@proxy.bupt.edu.cn:
remote: Counting objects: 24006, done.
remote: Compressing objects: 100% (4701/4701), done.
ceiving objects: 1% (241/24006), 43.99 KiB | 56 KiB/s
bravo :-)