将 Hexo 部署到 GitHub
有关在 Mac ( OS X ) 上部署 Hexo 博客请转到上一篇文章。
废话不多说,直接开始吧。
工作前提:Mac ( OS X )
如果你能找到其他方法替代,或许这个步骤也会适用于你。
- 注册 GitHub
打开 https://github.com/ 选择 Sign up。 - 在 GitHub 上新建仓库
在首页选择 + New repository,或者直接打开 https://github.com/new。
直接如下图配置即可:
注意:Repository name 要为 xxx.github.io (其中 xxx 指你的 ID )。
点击Create repository就完成了仓库的创建。 - 配置SSH keys
打开 https://github.com/settings/ssh,进行 SSH Keys 的设置,选择 Add SSH key。
首先,打开的你终端(Mac),输入如下代码:
cd \~/. ssh
这行代码能够帮助你检查电脑上现有的SSH key。
如果提示:No such file or directory说明没有key文件,输入以下代码生成新的key文件:
ssh-keygen -t rsa -C "你的邮件地址"
这里的邮件地址填自己注册时的邮件地址,注意大小写,双引号不能省略,终端会返回代码让你确定文件名,回车就好。
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/DoubleD/.ssh/id\_rsa):
接着会让你输入加密串,可以空着:
Enter passphrase (empty for no passphrase):\
Enter same passphrase again:\
看到如下所示的输出,就代表你已经成功的创建了一个SSH key:
在 GitHub
找到本机上的id_rsa.pub文件,打开它(建议使用 Sublime Text )复制里面的代码,记住不要多复制空格或换行,添加到下图位置:
Title 处填一个对你而言易于区分的名称
Key 里面把刚才复制的代码粘贴进去记住不要多复制空格或换行。
然后点击 Add key 就配置好了 SSH key 。
在 Mac 终端中输入下面的指令测试是否配置成功:
ssh -T git@github.com
如果返回的结果如下:
he authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
输入 yes,就能看到:
Hi YourID! You've successfully authenticated, but GitHub does not provide shell access.
这样你的SSH key就配置完成了。完成之后,我们设置好个人信息,用于提交代码说明是谁提交的,怎么联系。可以用以下指令完成:
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
- 部署 Hexo 到 GitHub 上
记住使用 cd 你的文件夹 命令进入你的 Hexo 安装目录。
将你的本地博客 deploy 到 GitHub 上就好。输入以下指令:
npm install hexo-deployer-git –save
然后打开博客目录的 _config.yml 文件,设置 deploy 的 type 为 git,repository(repo)
为:git@github.你的ID/你的ID.github.io.git (需要在 type 和 repo 后面加上一个空格再填写)。例如:
deploy:
type: git
repo: git@github.com:AirScr/AirScr.github.io.git
最后在你的 Hexo 目录中找到 source 文件夹,在其中新建一个文件CNAME,没有后缀名(建议使用 Sublime Text 新建),内容为你的域名( 即 domain.ltd,不要加 www 之类的前缀 ),保存。例如:
in.airscr.com
将你自己的域名解析到 你的id.github.io,例如:
AirScr.github.io
输入以下指令:
hexo g
hexo deploy//可简写为 hexo d
就可以直接在浏览器中访问了。
- 备注
可在 _config.yml 对 Hexo 进行设置。
在每次发布更改之前记住执行: