0%

一、前言

Hexo是一个快速、简洁且高效的博客框架,最近有搭建个人博客的想法,便动手尝试了。

二、初始化

1.安装Node.js

Node.js官网下载相应的安装包,一路安装即可。

2.安装Git

Mac下安装Xcode就自带Git。

3.注册Github账号并新建仓库

注册过程就不多说了,注册完成之后需要新建一个仓库。需要注意的是新创建的仓库的名字,必须是username.github.io。例如我的username是rile,那么新创建的仓库的名字便是rile.github.io。

4.配置SSH Key

这一步不是必须的,配置SSH Key的话之后每次更新博客就不用都输入用户名和密码,可以方便一些。

以下是详细配置过程。
(1)检查本机上是否已经存在SSH Key
打开终端,输入如下命令

1
2
cd .ssh
ls -la

检查终端输出的文件列表中是否已经存在id_rsa.pub 或 id_dsa.pub 文件,如果文件已经存在,则直接进入第三步。

(2)创建一个SSH Key
在终端输入如下命令

1
ssh-keygen -t rsa -C "your_email@example.com"

按下回车,让你输入文件名,直接回车会创建使用默认文件名的文件(推荐使用默认文件名),然后会提示你输入两次密码,可以为空。

(3)添加SSH Key到Github

如果你没有指定文件名(也就是使用的默认文件名),那么你的.ssh文件夹下,应该有一个id_rsa.pub文件了,打开该文件,复制里面的文本。然后登录Github,点击右上角头像右边的三角图标,点击Settings,然后在左边菜单栏点击SSH and GPG keys,点击New SSH key,Title 随便填一个,在Key栏填入你复制的内容,点击Add SSH key,就添加成功了。

(4)检验SSH Key是否配置成功
在终端输入如下命令

1
ssh -T git@github.com

如果出现

1
Are you sure you want to continue connecting (yes/no)?

请输入yes再按回车。

如果最后出现

1
Hi username! You've successfully authenticated, but GitHub does not provide shell access.

就说明你的SSH Key配置成功了。

5.安装Hexo

前面我们已经安装了Node.js,这里我们使用npm命令来安装Hexo

1
npm install -g hexo

等待一会就会完成下载安装。

接着在任意位置创建一个文件夹,如Blog,cd到该路径下执行以下命令

1
hexo init

该命令会在目标文件夹内建立网站所需要的所有文件。接下来是安装依赖包

1
npm install

到这里本地博客就搭建好了。执行以下命令(在你博客的对应文件夹路径下)

1
2
hexo generate
hexo server

在浏览器输入http://localhost:4000/ 就可以进行查看了。
当然这个博客是本地的,别人是无法访问的,之后我们需要部署到GitHub上。

6.同步本地博客到Github

编辑自己创建的本地博客文件夹中的_config.yml中的deploy节点

1
2
3
4
deploy:
type: git
repo: git@github.com:username/username.github.io.git
branch: master

注意:repo为这种形式的是配置了SSH Key之后的,如果没有配置则使用Https形式的地址。

为了能够使Hexo部署到GitHub上,需要安装一个插件

1
npm install hexo-deployer-git --save

然后输入以下命令

1
2
3
hexo clean
hexo generate
hexo deploy

在浏览器输入username.github.io就可以访问你的博客了。

三、配置主题

Hexo主题在Github上有很多,如

挑选自己喜欢的一款。当然,自己能够DIY也是极好的。

四、发布新文章

执行以下命令

1
hexo new post '文章标题'

这样会在本地博客的source->_posts路径下看到新建的文章,是md格式的,推荐使用Typora进行编辑。

编辑完成之后,与上面一样,执行以下命令

1
2
3
hexo clean
hexo generate
hexo deploy

即可更新到Github上。

最后晒上我的博客地址:https://rile14929.github.io/
祝大家也早日拥有自己的博客~

参考链接

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment