git之生成SSH key
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。简单说,SSH是一种网络协议,用于计算机之间的加密登录。
1.生成一个新的SSH key
1.1 生成命令:
$ ssh-keygen -t rsa -b 2048 -C “邮箱地址”
回车后输出如下:
Generating public/private rsa key pair. Enter file in which to save the key (/home/xxx/.ssh/idrsa):
xxx为用户名,回车后输出如下:
Enter passphrase (empty for no passphrase): Enter same passphrase again:
这步是让你输入密码,此密码在上传代码时要使用,一般设为github密码,方便记忆。
两次输入密码后,回车生成成功。
生成成功后在~/.ssh/目录会生成两个文件,id_rsa和id_rsa.pub ,如下:
2.将SSH key添加到ssh-agent
先确认ssh-agent处于启用状态: eval “$(ssh-agent -s)”
输出类似于:
Agent pid 32070
执行ssh-add时出现Could not open a connection to your authentication agent若执行ssh-add /path/to/xxx.pem是出现这个错误:Could not open a connection to your authentication agent,则先执行如下命令即可:ssh-agent bash
然后将SSH key添加到ssh-agent:
ssh-add ~/.ssh/id_rsa
这时又会要你输入密码:
Enter passphrase for /home/xxx/.ssh/id_rsa: 输入刚才记起来的密码,然后回车
3.将SSH key添加到Github账户中
这一步就是将本地和github连接起来的关键
3.1将id_rsa.pub里面的内容原样全部复制起来。
3.2打开github.com,登入账户,点击头像旁边的下拉按钮,选择settings —- ssh and gpg keys —— new ssh key —- 粘贴 —- 保存。
完成这些就可以向github上上传项目代码了,否则会出现报错 git@github.com: Permission denied (publickey)。
钻研不易,转载请注明出处。