How to create your own blog on github by hexo?

名词说明

github 网站是一个代码托管平台,经常用于与他人分享自己的项目与成果。github 利用 git 来逻辑化项目的版本控制和团队间的合作交流。github pages 则是 github 推出的一项用于搭建并托管个人网站的服务。hexo 是一个快捷开发个人博客的强大工具,它支持 Makedown 语法写作和很多功能强大的插件。

简而言之,我们将利用 github 来作为服务器托管我们的博客,用 github pages 来初始化存放我们博客的仓库,用 hexo 来创建、调试、发布我们的博客,并关联到我们创建的 github pages 仓库。因此,关键在于 hexo 与 github 服务器上仓库的连接。

准备工作

  • 注册 github 账号
  • 了解并安装 git
  • 安装 brew (mac上强大的软件管理工具)

环境配置

1. 通过 brew 安装 node.js

1
brew install node

node.js 会包含 npm 的安装,安装完成后检查是否安装成功。

1
node -v
1
npm -v

输出为版本号,我的输出如下:

1
v16.4.1
1
7.18.1

2. 利用 npm 安装 hexo

1
npm install -g hexo-cli

3. 利用 hexo 初始化博客网站

新建一个文件夹(blog)作为本地博客项目管理地址。

1
mkdir blog && cd blog

本地博客的初始化操作:

1
hexo init

初始化完成之后我们执行 ls 将会展示全部生成的文件如下:

1
2
3
4
_config.landscape.yml	package-lock.json	source
_config.yml package.json themes
db.json public
node_modules scaffolds

此时我们执行命令 hexo s 就可以预览我们的博客网站,命令行界面输出如下表示一切正常。

1
2
3
INFO  Validating config
INFO Start processing
INFO Hexo is running at http://localhost:4000 . Press Ctrl+C to stop.

在浏览器地址栏输入 http://localhost:4000 就会打开我们的博客。此时,我们的电脑即为博客的服务器端,其他设备可通过将字符串
“localhost” 替换为本机 ip 地址的方式来访问我们的博客。

4. 通过 Github Pages 建立远程仓库

官方教程

5. 生成 git 客户端 SSH key

通过 Terminal 配置用户名和邮箱:

1
2
git config --global user.name "username"
git config --global user.email "email@gmail.com"

然后通过下面的命令生成 SSH key:

1
ssh-keygen -t rsa -C "email@gmail.com"

接着输入如下命令获取 key:

1
cat ~/.ssh/id_rsa.pub

6. 与 github 仓库建立远程链接

Github 账户 --> Settings --> SSH and GPG keys --> New SSH key

7. 管理个人博客常用命令与技巧

  • 发布博客:hexo n newblog
  • 清除已生成的静态文件:hexo clean
  • 生成博客:hexo g
  • 部署博客:hexo d
    • 避免重复输入 passphrase:ssh-add -K ~/.ssh/id_rsa。该命令可用于在当前 session 中记住私钥,重启
      Terminal 会要求再次输入 passphrase。
  • 一键生成博客并部署:hexo g -d

参考文献

[1] Mac下使用GitHub+Hexo搭建个人博客

[2] git命令行如何设置passphrase for key来避免每次push都需要输入pass for key?

[3] GitHub Pages + Hexo免费搭建个人博客_Mac