总概:在使用git的时候,和目标仓库建立关系有两种方式https,ssh。一般用的是https认证(这样简单方便),但有个缺点,pull,push等操作需要频繁输入用户验证。虽然可以把用户验证账号密码保存在本地(这会导致一个新问题,本地存储使用的是明文-sourcetree),这个时候可以采用ssh的方式连接,能同时解决用户频繁验证和账号安全问题
实现步骤(windows7环境)
1 首先本地安装git,具体百度
2 生成公私钥
ssh-keygen -t rsa
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名
以上命令省略了-C, -f 参数,因此,运行命令后会提示输入一个文件名来保存生成密文,接着又会提示输入两次口令(用于push操作时候要输入的密码,如果不设,push时不需要输入口令验证,直接提交)
之后会在用户主目录生成公私钥文件
3 登陆github,将公钥(is_rsa.pub)内容加入ssh key 中
4 将私钥加入告诉缓存ssh-agent中(第二步设置口令用)
ssh-add ~/.ssh/id_rsa
如果不能直接加到ssh-agent中,可进行下图操作
ssh-agent
是专为既令人愉快又安全的处理RSA和DSA密钥而设计的特殊程序,它包括在OpenSSH分发内(请参阅本系列文章的第1部分以得到关于RSA和DSA认证的介绍)。不同于ssh
,ssh-agent
是个长时间持续运行的守护进程(daemon),设计它的唯一目的就是对解密的专用密钥进行高速缓存
5 测试ssh
ssh -T git@github.com
输出下列类似提示说明认证成功
6 检出git repository
检出repository有两种方式,https,ssh,注意选择ssh的方式,否则push仍需用户名密码验证
git clone xxx
第一篇博客,有问题欢迎指正,共同学习