使用 Hexo 程序部署博客到githubpage上
# 环境
Hexo 程序使用 node.js 程序编写,因此需要现在环境机上部署 node.js,git 只用来推送。
什么是 Node.js:一个运行 javascript (JS) 的环境。Hexo 是一个 javascript (JS) 语言的程序。一般 JS 运行在浏览器中,但是也有一种非浏览器环境也可以运行 JS。这个环境是 Node.js
什么是 Git:一个版本控制软件。Hexo 博客源码由纯文本构成,管理纯文本项目的最好办法之一就是使用 Git。还记得 word 里面的历史记录和版本回退功能么?简单的来说,Git 就提供了类似功能,只不过更强大。
本文章使用 fedora 系 linux 操作。
# 安装 git
使用 yum 指令进行安装:
1 | su |
查看是否安装成功:
1 | [root@localhost ~]# git --version |
# 安装 node.js
本来可以直接使用 apt,yum
这种工具一键安装的,但是显然安装的版本十分的 stable,所以这里使用 nvm 工具来安装 nodejs 和 npm。
1 | curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash |
然后查看版本:
1 | [root@localhost ~]# node -v |
顺便看看 npm 版本:
1 | [root@localhost ~]# npm -v |
# 配置本体
# hexo
如果你没有使用加速等工具的话,这里建议将 npm 源改到淘宝:
1 | npm config set registry http://registry.npm.taobao.org |
使用 npm 指令安装:
1 | npm install -g hexo-cli |
看看安装好了没:
1 | [root@localhost ~]# hexo -v |
# 安装 server
如果你想在本地预览博客的话,可以安装下。其实装不装都无所谓。
1 | npm install hexo hexo-server |
# 安装推送插件
这个推送插件是后面要推送到 github page
上要使用的插件。
1 | npm install hexo-deployer-git --save |
# 创建博客
1 | hexo init [你的博客名字] |
如果你已经备份过想要还原,则只需要做到这一步就已经可以了。但是如果想要推送还需要再看下面的配置 git 项。
# 本地预览博客
上面已经生成好了基本博客,可以使用 ls
命令查看下是否正确生成了文件
下面是 hexo 博客的基本结构。
1 | . |
如果确认没什么问题便可以进行生成步骤了。
- 测试本地生成博客
1 | # 生成一篇文章,注意要在blog的目录下。 |
此时你可以打开 [博客地址]:4000
来查看效果了。
如果确认没问题,便可以继续操作。
# 备份还原
博客部署完成后或是以后工作中难免需要更换环境,这里也简单说一下备份还原的流程。
# 本地备份还原
本地备份还原是对主要文件自行压缩拷贝后导出,然后覆盖进行还原
需要备份的文件列表如下
1 | . |
将这些文件考出来后则备份完成。
# 可能会出现的问题
如果当你完成还原,进行 hexo g
命令提示如下错误:
1 | root@LAPTOP-N4RDFRJ0:/mnt/d/Program/hexo/blog# npm install --save bulma-stylus |
执行这条命令即可:
1 | npm cache clean --force |
# 配置远端
我将博客部署到了 github 上,所以你要先去 github.com 上注册一个账户。并创建一个仓库。
# 初始化 git
1 | init git |
如果提示
Couldn't find an alternative telinit implementation to spawn.
不用管,直接下一步。
# 配置 ssh
- 配置登录信息
1 | git config --global user.name "你的git用户名" |
- 生成 ssh keygen
1 | ssh-keygen -t rsa -C "你的git登录邮箱" |
如果弹出了很多内容,直接进行一个回车跳过。
1 | Enter file in which to save the key (/root/.ssh/id_rsa): |
- 复制密钥
1 | vi /root/.ssh/id_rsa.pub |
将里面显示的所有内容复制。
- 登录 github
- 头像
- Settings
- SSH and GPG keys
- New SSH key
- 将复制的内容粘贴到 Keys 框里
- Add SSH key
- 测试链接是否成功
1 | [root@localhost ~]# ssh -T [email protected] |
# 配置推送
配置完 git 之后便可以配置 hexo 博客的推送地址了,下面以我的为例。
- 首先 cd 到当前目录
1 | cd blog |
- 编辑配置文件
1 | vi _config.yml |
- 移动到 deploy 天机如下内容
1 | deploy: |
# 推送博客
已经测试并生成过博客了,所以可以直接推送。
1 | # 清理之前生成的文件 |
# 结语
此时你已经完成了 hexo 博客的基本配置。