git是一款超极优秀的版本控制工具,包括Linus大神的linux项目在内的千千万万的项目在使用。你可以使用Eclipse插件管理,亦可以使用终端工具。
git虽然有着svn不能匹及的本地仓库,但是和svn一样,和远程服务器通信也相当常用。常用的pull和push就是比较常见的命令。
然后,你是不是觉得从远程拉取(pull)到本地是不是很慢,从本地推到服务器端(push)又是不是很耗时呢,是吧,正所谓人生苦短,赶紧加速你的git吧。
修改ssh配置
按照下面的内容修改这个文件vim ~/.ssh/config
1 2 3 4 | ControlMaster auto ##ControlPath /tmp/%r@%h:%p ControlPath /tmp/git@github.com:22 ControlPersist yes |
---|
一些注解
- ControlMaster auto可以使多个ssh会话共享一个已经存在的连接,如果没有,则自动创建一个连接。
- ControlPath /tmp/%r@%h:%p可以指定想要共享的连接。%r代表远程登录用户名,一般都为git,%h表示目标主机,%p表示端口。
- ControlPersist yes 则可以让共享的连接持有处于连接状态。
常用的ControlPath
下面包含开源中国,github,gitcafe等代码托管。
1 2 3 | ControlPath /tmp/git@git.oschina.net:22 ControlPath /tmp/git@github.com:22 ControlPath /tmp/git@gitcafe.com:22 |
---|
快来试一试吧,是不是提高了5倍!
注:由于网络的情况,结果可能略有不同。已经很快的但没有感觉改善的同学,可以继续读下去。
还能更快
还有一个能提高50倍的方法,不过对于一般开发者不是很常用,如需了解可以参考Speed Up Git (5x to 50x)