前言

我用了约 2 天的时间学习了如何在 MacOS 上使用 Github Pages 和 Hexo 制作一个免费的个人博客,现在也是终于建成了!

因此,在此处记录一下整体的过程,也方便看到的朋友也能够搭建一个属于自己的小博客。

本篇博客大多是根据网络上的教程整合而来,按照自己实际过程进行整理,因此会将参考文章的链接放在最下方,方便读者自己去选择和研究。

Step1: 本地部署

Node.js 安装

直接从 Node.js 官网下载后安装即可。

安装完成后,输入下列命令,如果出现版本号,证明配置成功。

1
$ node -v

Git 安装

直接从 Git 官网下载后安装即可。

安装完成后,输入下列命令,如果出现版本号,证明配置成功。

1
$ git -v

Hexo 安装

在终端输入下列命令即可自动安装,需要注意的是此处是此处使用 -g 是为了全局安装。

1
$ sudo npm install -g hexo-cli

来到你的博客文件夹想要存放的空间,输入以下指令用于初始化本地博客文件,其中 MyBlog 可以修改为你希望的文件夹名称。

1
2
3
$ hexo init MyBlog
$ cd ~/MyBlog/
$ npm install

初始化完成后,目录结构为:

text
1
2
3
4
5
6
7
8
.
├── _config.yml # 网站配置信息
├── package.json # 应用程序信息
├── scaffolds # 模板文件夹
├── source # 存放用户资源
| ├── _drafts
| └── _posts # 你的博客文档
└── themes # 主题文件夹

在终端中输入如下内容,在本地生成相关静态文件并启动。

1
2
$ hexo g
$ hexo s

现在可以通过浏览器访问 http://localhost:4000 查看效果,如果跟下图一样,证明本地部署成功。

本地部署成功

如果需要退出 hexo,可以在命令行界面使用 ctrl+c

Step2: 连接至 Github

创建 Github 库

如果还没有 Github 账号,请先进行注册。

之后,需要创建一个新的仓库,仓库名必须为 用户名.github.io,我这里需要设置为 gubaleaves.github.io注意所建的库要公开

创建新仓库

安装 Git 部署插件

输入以下命令:

1
$ npm install hexo-deployer-git --save 

配置 SSH 密钥

SSH 密钥是一个认证,让 Github 识别绑定你的计算机,允许这台计算机无需密码提交,修改项目。

在创建的博客文件夹下输入以下命令,其中 [email protected] 需要替换为自己的 Github 邮箱地址。

1
$ ssh-keygen -t rsa -C "[email protected]"

输入命令后连续回车三次即可,中间步骤并不重要,完成后可以得到 SSH 密钥。

获得 SSH 密钥

可以看到密钥保存在 /var/root/.ssh/id_rsa.pub 中,进入该文件复制密钥,登入 Github,进入 Settings,找到 SSH and GPG Keys,选择 New SSH key 进行配置。

进行 SSH 配置

在博客文件夹下运行以下命令:

1
$ ssh -T [email protected]

如果提示 You’ve successfully authenticated,则 SSH 已经配置成功。

SSH 配置成功

更新本地文件到 Github

首先前往 Github 仓库,粘贴 SSH 地址。

粘贴 SSH 地址

之后需要修改博客文件夹下的 _config.yml 文件。

修改 yml 文件

运行以下命令:

1
$ hexo g -d

以后每次修改上传都需要重新运行该命令,上传成功便会显示提示 INFO Deploy done: git

此时便可通过 https://用户名.github.io 来访问你的博客,注意用户名要改成自己的!

注意事项

  • 如果未要求使用管理员指令 sudo 的命令行,就尽量不要使用管理员命令,不然很容易出现权限问题;

  • 如果出现了权限问题,报错一般为 Error: EACCES,可以使用如下指令:

    1
    $ sudo chown -R $USER /usr/local/需要权限的路径

参考文章

知乎 - 使用Github Pages和Hexo部署个人博客

知乎 - 【2024】从零开始用Hexo+GithubPage搭建个人网站(保姆级)

CSDN - 使用 Github Pages 和 Hexo 搭建自己的独立博客

Bilibili - 最新从零开始Github Pages +Hexo 搭建个人静态博客与Next主题个性化配置