0.简单的目的
对于我而言,目的就三个:
- 下载github上某些大牛的项目,便于自己研究
- 上传ubuntu或者Windows平时练习的小程序,方便以后查阅
- PUSH的时候不想输入密码
1.安装必备工具
- ubuntu
git version 1.9.1
在ubuntu下安装git工具很简单,只需要apt-get install git就行,
SSH工具是ubuntu自带的工具,不要再安装 - windows
命令行工具Git-1.9.5-preview20141217.exe
对应git version 1.9.5.msysgit.0
图形界面工具TortoiseGit-1.8.15.0-64bit.msi
Git-1.9.5-preview又叫做msysgit,是windows下git命令行工具,这个工具完全可以满足我们的日常需求
TortoiseGit只是在msysgit外面加了一层壳,内部实际上还是调用msysgit的命令
TortoiseGit安装指导
但是我不推荐使用基于Putty的Plink作为SSH客户端工具,推荐使用openssh使用SSH客户端工具,因为这样我们就能共用通过msysgit生成的 密钥工具,不需要再单独通过putty生成密钥,同时在我们ssh免密码push的时候回很方便,设置方法如下:
在git bash中执行where.exe ssh就能获取到ssh客户端的路径
然后在TortoiseGit-->setting->network中设置ssh客户端路径,如下图:
2.github的认证方式
github支持两种方式, 一种是HTTPS,一种是SSH,我们选择哪种认证方式,和clone时选择的URL相关,一般来说,选择HTTPS的认证方式操作起来稍微简单一些。
- 使用HTTPS
git clone https://github.com/Frank/Practice.git
使用https的认证方式,clone的时候是不需要输入密码的,PUSH的时候是需要密码的,我们通常希望保存密码,下次不用在输入密码,windows下和ubuntu下设置保存密码的方式有些不一样
ubuntu下设置保存密码的方式:
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=3600'
windows下设置保存密码的方式
git config --global credential.helper wincred
- 使用SSH
使用SSH的方式,需要通过ssh-keygen工具生成密钥对,把公钥上传的github上。
ssh-keygen -t rsa -C "your_email@example.com"
会在家目录下生成一个.ssh目录,并在.ssh目录下生成
id_rsa(私钥,本地保存)和id_rsa.pub(远端),我们在设置生成ssh-keygen的时候,如果不是对安全性要求特别高,不要去填写key,直接回车就行,这样,我们每次clone或者push的时候都不需要输入密码,会方便很多