##使用Github SSH Key以免去Hexo部署时输入密码
原文本来放在Hexo常见问题解决方案之中,但是由于步骤较多,理解起来比较困难,因此将本文独立出来单独成篇,以便于进行操作。
操作
修改_config.yml
将_config.yml的git信息修改为SSH形式。
###列出已存在的SSH Key
打开Git Bash,并且输入:1
ls -al ~/.ssh
这个命令会列出你.ssh账户中已经存在的SSH key,如果之前没有设置过,一般都是没有。
###生成密钥
然后输入:1
ssh-keygen -t rsa -C "your_email@example.com"
这个命令将会生成一个以your_email@example.com为标签的ssh key,然后bash中会显示:
1 | Generating public/private rsa key pair. |
直接回车,然后出现:
1 | Enter passphrase (empty for no passphrase): [Type a passphrase] |
因为追求操作方便,我们不打算在deploy的时候输入这个passphrase,所以直接回车两次设为空。然后你会看到:
1 | Your identification has been saved in ~/.ssh/id_rsa. |
###加入SSH Agent
下一步输入:1
ssh-agent -s
如果出现类似Agent pid XXXX这样的字样,则跳过下一步,否则输入:
1 | eval `ssh-agent -s` |
直到出现Agent pid XXXX这样的提示之后,输入:1
ssh-add ~/.ssh/id_rsa
这样,你成功的在本地生成了一个可用的SSH key。
###将SSH Key添加到Github中
下面将这个key添加到github网站。
打开https://github.com/settings/ssh,点击Add SSH Key,复制id_rsa.pub中的所有内容到Key框中,在Title框中输入方便自己记忆的名字(建议输入能让自己明白是哪台电脑的名字,方便以后管理)。
当网页显示添加成功后,就已经完成了全部的操作。
下面进行一些测试,同样是打开Git Bash,输入:1
ssh -T git@github.com
bash中会显示如下字样:
1 | The authenticity of host 'github.com (207.97.227.239)' can't be established. |
如果成功看见,说明你已经配置好了,快去享受爽快的hexo一键部署吧;
如果出现任何错误提示,请仔细检查自己的操作,或者将错误信息发给我。
更新日志
2015年02月07日 独立成篇。
2015年02月16日 补充_config.yml的修改。
2015年03月22日 修复了一处代码显示BUG。