Hexo静态博客本地部署+Github云部署

Hexo官网:https://hexo.io/zh-cn/
Hexo依赖于Node.js:https://nodejs.org/下载并安装好
云部署需要Git:https://git-scm.com/下载并安装好
HexoEditor

安装Hexo到本地部署

在你想放博客的文件夹右键打开Git Bash,粘贴下面的文本,安装
$ npm install hexo-cli -g
PS:如果下载速度慢可以先设置一个国内cnpm镜像,执行:
npm install -g cnpm --registry=http://registry.npm.taobao.org
然后安装hexo,相应的npm也要换成cnpm
eCqEWD.jpg
安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。

$ hexo init <folder>
$ cd <folder>
$ npm install
$ hexo server
INFO  Start processing
INFO  Hexo is running at http://localhost:4000 . Press Ctrl+C to stop.

ePKwHs.jpg
新建完成后,指定文件夹的目录如下:

.
├── _config.yml
├── package.json
├── scaffolds
├── source
|   ├── _drafts
|   └── _posts
└── themes

config.yml
网站的 配置 信息,您可以在此配置大部分的参数。
package.json
应用程序的信息。EJS, Stylus 和 Markdown renderer 已默认安装,您可以自由移除。
scaffolds
模版 文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件。
source
资源文件夹是存放用户资源的地方。除 posts 文件夹之外,开头命名为 (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。
themes
主题 文件夹。Hexo 会根据主题来生成静态页面。

云部署准备-Git配置

打开Git Bash
$ git config --global user.name "zikercn"
$ git config --global user.email "zikercn@gmail.com"

云部署准备-Github仓库创建

在Github上创建Pages仓库
点击右上角的 选择 New repository
仓库名取固定格式你的用户名.github.io,其他不变,点Create repository创建
eCDLcQ.jpg
复制SSH地址:git@github.com:zikercn/zikercn.github.io.git
ePMTds.jpg

云部署准备-SSH秘钥配置

本地生成SSH key:

1.打开Git Bash,粘贴下面的文本,替换您的GitHub电子邮件地址。
$ ssh-keygen -t rsa -b 4096 -C "zikercn@gmail.com"
连续回车即可,这将使用提供的电子邮件作为标签创建一个新的ssh密钥。
秘钥保存位置在:/Users/ZHM/.ssh/id_rsa文件夹内
eC2vxf.jpg

$ cd ~/.ssh
$ ls
id_rsa  id_rsa.pub
id_rsa 为私钥  id_rsa.pub 为公钥
$ cat id_rsa.pub 查看公钥内容并复制
eCfvxx.jpg

把生成的公钥添加到Github账户:

点击右上角的头像,选择Settings,在左侧选择SSH and GPG keys,这里就是管理SSH秘钥的地方,一台机器对应一个秘钥keys。
点击New SSH key添加公钥
eChMdg.jpg
eChfTe.jpg
测试
ssh git@github.com
第一次提示连接确认输入yes回车,当显示下面的语句就表示连接成功了
Hi zikercn! You've successfully authenticated

把生成的公钥添加到Coding账户:

点击右上角的头像,选择个人设置,在左侧选择SSH公钥
点击新增公钥添加公钥
eCo4DP.jpg

配置_config.yml

您可以在_config.yml中修改大部分的配置
eCDLcQ.jpg
复制SSH地址:git@github.com:zikercn/zikercn.github.io.git
打开本地Hexo博客目录,用编辑器打开_config.yml到最下面编辑
ePhMEF.jpg
打开本地Hexo博客目录,右键打开Git Bash,用下面的命名生成静态文件
$ hexo generate
修改主题,把下载好的主题解压到themes目录,修改_config.yml,theme:名称与主题文件夹名称相同
ePgDaj.jpg
修改好主题后重新生成静态页面,本地预览看看,没有问题就可以云部署了
$ hexo generate
$ hexo server
其他permalink: /posts/:title/

部署到Github

$ hexo deploy
ERROR Deployer not found: git
如果现实上面的提示就需要下载deployer,如果在
$ npm install hexo-deployer-git --save

Hexo日常管理相关命令:

$ hexo new [layout] <title>
$ hexo new 文章名
$ hexo new page 页面名
$ hexo clean
$ hexo generate
$ hexo deploy