- 浏览: 1504496 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (419)
- XMPP (19)
- Android (180)
- Java (59)
- Network (4)
- HTML5 (13)
- Eclipse (9)
- SCM (23)
- C/C++ (4)
- UML (4)
- Libjingle (15)
- Tools&Softwares (29)
- Linphone (5)
- Linux&UNIX (6)
- Windows (18)
- Google (10)
- MISC (3)
- SIP (6)
- SQLite (5)
- Security (4)
- Opensource (29)
- Online (2)
- 文章 (3)
- MemoryLeak (10)
- Decompile (5)
- Ruby (1)
- Image (1)
- Bat (4)
- TTS&ASR (28)
- Multimedia (1)
- iOS (20)
- Asciiflow - ASCII Flow Diagram Tool.htm (1)
- Networking (1)
- DLNA&UPnP (2)
- Chrome (2)
- CI (1)
- SmartHome (0)
- CloudComputing (1)
- NodeJS (3)
- MachineLearning (2)
最新评论
-
bzhao:
点赞123!
Windows的adb shell中使用vi不乱码方法及AdbPutty -
wahahachuang8:
我觉得这种东西自己开发太麻烦了,就别自己捣鼓了,找个第三方,方 ...
HTML5 WebSocket 技术介绍 -
obehavior:
view.setOnTouchListenerview是什么
[转]android 一直在最前面的浮动窗口效果 -
wutenghua:
[转]android 一直在最前面的浮动窗口效果 -
zee3.lin:
Sorry~~
When I build "call ...
Step by Step about How to Build libjingle 0.4
有两篇文章写的都不错, 这里转载一下.
经常有使用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点东东下来,折腾了会,算是基本可用了吧
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 :-)
- connect.zip (43.7 KB)
- 下载次数: 176
评论
core.gitProxy
A "proxy command" to execute (as command host port) instead of establishing direct connection to the remote server when using the git protocol for fetching. If the variable value is in the "COMMAND for DOMAIN" format, the command is applied only on hostnames ending with the specified domain string. This variable may be set multiple times and is matched in the given order; the first match wins.
Can be overridden by the GIT_PROXY_COMMAND environment variable (which always applies universally, without the special "for" handling).
The special string none can be used as the proxy command to specify that no proxy be used for a given domain pattern. This is useful for excluding servers inside a firewall from proxy use, while defaulting to a common proxy for external domains.
# Proxy settings
[core]
gitProxy="ssh" for "kernel.org"
gitProxy=default-proxy ; for the rest
发表评论
-
maven设置HTTP代理
2012-03-16 14:52 5562http://maven.apache.org/ Apa ... -
Trigger Cloudbees Jenkins build upon commits to bitbucket git repo
2012-02-29 17:03 18141. On Cloudbees job configure, ... -
jenkins-git-ant实现持续集成及远程部署
2012-02-27 22:31 2202pdf文档格式,中文的,总结的相当不错。 -
hudson+findbugs的配置方法及无数坑爹的陷阱
2012-02-27 22:10 6461http://hi.baidu.com/dburu/blog/ ... -
Git push tags to remote repo
2012-02-21 14:44 3063By default, the ‘git push’ comm ... -
JenkinsMobi/HudsonMobi - 监控Jenkins/Hudson服务的客户端应用
2012-02-16 23:03 1474http://www.jenkins-ci.mobi/ ... -
源码搜索引擎 OpenGrok 0.11 发布
2012-02-16 12:14 1330OpenGrok 0.11 发布了,该版本增加 ... -
Jenkins CLI
2012-03-25 17:50 1174https://wiki.jenkins-ci.org/dis ... -
CloudBees提供的免费Jenkins (prev. Hudson) CI (Continuous Integration)服务
2012-02-15 20:56 2054下面我创建的Jobs 下面是某 ... -
Git、Gerrit与Jenkins/Hudson CI服务器
2012-02-10 11:32 1901http://www.infoq.com/cn/article ... -
[SCM]源码管理 - mercurial
2012-02-05 17:55 1854http://www.cnblogs.com/itech/ar ... -
Jenkins入门总结
2012-02-05 17:54 9890http://www.cnblogs.com/itech/ar ... -
msysgit - Git for Windows
2012-01-30 20:16 2666http://code.google.com/p/msysgi ... -
Windows下msysgit通过http代理上网
2012-01-30 11:52 2385网上有各种方法,有效的或者无效的,下面这种方法对我来说有效: ... -
访问Bitbucket的手机应用
2012-01-26 20:55 1196http://blog.bitbucket.org/2011/ ... -
A Collection of Useful .gitignore Templates
2012-01-23 16:42 2181https://github.com/github/gitig ... -
Typical .gitignore file for an Android app
2012-01-23 16:38 1418# built application files * ... -
一个免费的私有代码存放仓库
2012-01-23 14:54 4877https://bitbucket.org/ 免费 ... -
Eclipse的Mercurial插件 HgEclipse
2011-05-16 20:46 2526HgEclipse 是一个 Eclipse 支持 Merc ... -
[Subclipse-users] Could not resolve hostname
2011-05-09 12:57 1097Open your Eclipse preferences a ...
相关推荐
"Git 命令详解" Git 是用 C 语言开发的分布版本控制系统。版本控制系统可以保留一个文件集合的历史记录,并能回滚文件集合到另一个...* 通过 http 和代理服务器进行远端操作:使用 `git config` 命令设置代理服务器。
这个“Windows 64位系统Git安装包”提供了适用于64位Windows操作系统的Git环境,版本为Git-2.21.0-64-bit。这个版本在发布时是稳定版,意味着它已经经过了充分的测试,适合日常开发使用。 Git的核心功能包括: 1. ...
搭建基于SSH公钥的Git服务器 本文将指导您如何搭建基于SSH公钥的Git服务器,包括服务端和客户端的配置。服务端配置包括创建共享账户、搭建空版本仓库、访问授权和限制shell。客户端配置包括安装Git、生成SSH公钥、...
- **权限管理**:Gitblit允许管理员为不同的用户和团队设置细粒度的访问权限,确保数据安全。它可以控制用户对仓库的读、写和管理权限。 - **邮件通知**:当有新的提交或者其他活动发生时,Gitblit可以自动发送...
4.2 思考:为什么工作区根目录下有一个 .git 目录/ 60 4.3 思考:git config 命令的各参数有何区别/ 63 4.4 思考:是谁完成的提交/ 65 4.5 思考:随意设置提交者姓名,是否太不安全/ 67 4.6 思考:命令别名是干什么...
- 提交者的信息可以通过 `git config user.name` 和 `git config user.email` 设置,确保提交信息的一致性和可追踪性。 - **4.5 命令别名的功能** - Git 支持定义命令别名,简化常用的命令操作。 - **4.6 备份...
在Git版本控制系统中,将本地仓库的改动推送到远程服务器是一项基本操作。...在实际使用中,根据具体的Git服务器设置和团队规范,推送过程可能会略有不同,但基本的`git remote add`和`git push`命令始终是核心。
用户可以通过运行这个exe文件来安装Git,按照向导设置路径、配置默认编辑器和HTTPS代理等。 在使用过程中,用户可以利用Git进行版本控制,如创建本地仓库(`git init`)、添加文件到仓库(`git add`)、提交更改(`...
在使用Git进行代码仓库克隆操作时,如果出现“sign_and_send_pubkey: signing failed: agent refused operation”的错误提示,意味着SSH代理拒绝了身份验证的操作。这通常发生在用户尝试通过SSH方式访问Git仓库时,...
如果你需要通过HTTP代理访问Git服务器,可以通过此设置来指定。 8. **全局忽略文件**: ``` [core] excludesfile = ~/.gitignore_global ``` 可以设置一个全局的`.gitignore`文件,这样所有仓库都会自动忽略...
安装过程中,用户可以选择自定义配置,如路径设置、默认编辑器、HTTPS代理设置等。 在日常使用中,了解Git的基本操作至关重要,例如: - **初始化仓库**:`git init`用于在本地创建一个新的Git仓库。 - **添加文件...
7. **配置HTTPS传输**:这里可以决定是否使用SSL/TLS证书检查,以及是否使用Git的HTTP代理。 8. **安装**:确认所有设置后,点击“Install”开始安装。 安装完成后,你可以通过命令行或Git Bash启动Git,进行基本...
### Git常用的笔记资源信息 #### 知识点详解 **一、配置管理** 1. **配置凭证存储方式:** ```plaintext [credential] helper=store--file.git-credentials ``` 这段配置告诉Git如何保存你的用户名和密码等...
与代理进行交互时,为配置 SSL 提供了新选项 Git 现在已拥有自己内置的 bug 报告工具。此工具用于生成调试信息,如内核和编译器数据以及其他关于 Git 的构建信息,以便帮助分析问题 重构与 GnuPG 交互的代码 许多 ...
例如,设置SOCKS5代理为`127.0.0.1:1080`,使用以下命令: ``` git config --global http.proxy 'socks5://127.0.0.1:1080' git config --global https.proxy 'socks5://127.0.0.1:1080' ``` - 当你需要取消...
安装过程中,用户可以选择配置选项,如设置Git的默认文本编辑器、选择是否使用SSH协议以及设置HTTPS代理等。此外,Git for Windows还包括一个Git Bash模拟器,提供类似Linux的命令行环境,使得开发者在Windows上也...
7. **HTTPS代理设置**:如果你在使用公司网络,可能需要配置HTTP代理以访问Git仓库。 完成安装后,你可以通过命令行(Git Bash或PowerShell)或图形界面工具(如SourceTree、GitHub Desktop)来使用Git。基本操作...
64. **删除全局设置**:`git config --global --unset <setting>`。 65. **新建并切换到新分支上,同时这个分支没有任何commit**:`git switch -c <new-branch>`。 66. **展示任意分支某一文件的内容**:`git show ...
4. 开启HTTPS代理:如果网络环境需要使用代理,记得在Git配置中设置HTTP/HTTPS代理,以便于访问远程仓库。 安装完成后,用户可以使用以下常见的Git命令来操作: 1. 初始化仓库:`git init`在当前目录创建一个新的...
它工作在Web服务器后面,如Apache或Nginx,将HTTP请求转换为Git操作。这样,即使在不允许直接使用Git的默认TCP端口(9418)或者SSH协议的网络环境下,用户也能正常地克隆、推送和拉取代码。 Grack的核心功能包括: ...