零成本获取一个属于自己的博客 ( 日记 ) 站点 ( 白嫖 ) ,多好。
写在前面
使用 GitHub Pages 搭建站点的好处:
- 不用花一分钱
- 不需要维护服务器
- 可以绑定自己的域名
- 快速将内容恢复到历史版本
- 内容可以轻松打包、转移、发布到其它平台
- GitHub Pages 会帮你搞定 SSL 证书,即使是自定义域名
本文所使用的
- Windows 10 1903
- Git for Windows v2.25.0
- Node.js v12.15.0
- Hexo v4.2.0
- hexo-deployer-git v2.1.0
基础
本文内容较为详细,基础部分如果已经有 ( 已完成 ) 可以自行选择跳过。
Git
要在 Windows 平台上使用 Git ,你需要 Git for Windows ,下载并安装 ( 如果觉得官网下载速度过慢,可以前往 淘宝 NPM 镜像 下载 ) 。
我在这里使用的是 此链接 下载的 Git-2.25.0-64-bit.exe
,全默认选项安装。
验证安装
在资源管理器右键菜单或开始菜单里,可以找到 Git Bash
,打开后是个命令行界面 ( 记住这个东西,待会要用 )。

Node.js
下载 Node.js 并安装 ( 同样,如果觉得官网下载速度过慢,可以前往 淘宝 NPM 镜像 下载 ) 。
我在这里使用的是 此链接 下载的 node-v12.15.0-x64.msi
,全默认选项安装。
验证安装
打开 Git Bash
,通过下面的代码查看版本 :
node -v
npm -v

GitHub & SSH key
前往 GitHub 注册属于你的账号 ( 请及时验证邮箱地址 ) 。
打开 Git Bash
,运行下面的命令 :
ssh-keygen -t rsa -C "{{你的电子邮箱地址}}"
连续3次回车,最终会在用户目录下生成个包含公钥私钥等数据的目录 ( 一般是 C:/Users/{{你的用户名}}/.ssh/
) 。

打开这个目录,找到 id_rsa.pub
文件,用你喜欢的二进制文本编辑器 ( 记事本 ) 打开并复制里面的内容。前往 GitHub -> Settings -> SSH and GPG keys -> New SSH key
( 即 该链接 ):
将刚复制的内容粘贴到 Key
中,Title
填你喜欢的,点击保存 ( Add SSH Key
) 。

设置 Git
运行下方命令 :
git config --global user.name "{{你的 GitHub username}}"
git config --global user.email "{{你的 GitHub 注册邮箱地址}}"
验证是否成功
打开 Git Bash
,运行下面的命令 :
ssh -T [email protected] # 此处邮箱地址不用改
如果提示 Are you sure you want to continue connecting (yes/no)?
请输入 yes
并回车。
Hi {{你的 GitHub username}}! You've successfully authenticated, but GitHub does not provide shell access.
看到这个信息则说明配置成功。
Hexo
Hexo 是一个快速、简洁且高效的博客框架。
打开 Git Bash
,运行下面的命令安装 Hexo ( 回车后可能需要等待一段时间,我在这里等了 100s
) :
npm install -g hexo
提示 + hexo@{{版本号}}
即为安装成功。
建站
初始化 Hexo
在电脑的某个地方新建一个文件夹,由于这个文件夹就是你博客存放源文件的地方,所以最好不要随便放 ( 我在这里用的 C:/hexo
) 。
在这个文件夹下右键启动 Git Bash
( 或者其他地方打开 Git Bash
后 cd
到该目录下 ) ,运行下面的命令 ( 运行时程序会 clone
基础数据,需要等待 ) :
hexo init
当显示 INFO Start blogging with Hexo!
即为成功。
可以根据 官方文档 修改 _config.yml
配置文件,接下来继续运行下面的命令 :
hexo g # 生成站点静态文件
hexo s # 启动内置的服务器
hexo s
启动了内置的服务器后,打开浏览器访问 http://localhost:4000
即可看到你的站点 ( 本地预览 ) 。
欣赏完了?在刚刚的 Git Bash
内键盘操作 Ctrl+C
关掉服务器。
换个主题
如果你喜欢默认的主题,请跳过本章节。
我在这里用 SumiMakito/hexo-theme-Journal 做演示。
在你的 hexo
站点目录下用 Git Bash
运行下面的命令安装主题 ( 需要等待 ) :
git clone {{主题 git 文件地址}} themes/{{主题名称}}
例如 :
git clone <https://github.com/SumiMakito/hexo-theme-Journal.git> themes/journal
下载完成后修改 _config.yml
中的 theme: landscape
改为 theme: {{主题名称}}
,然后执行 hexo g
来重新生成。
如果出现一些莫名其妙的问题,执行 hexo clean
来清理 public
的内容,然后重新生成发布。
GitHub Pages!
创建仓库
前往 GitHub -> New repository
( 即 该链接 ) ,新建一个名为 {{你的 GitHub username}}.github.io
的仓库,其余默认,然后点击创建 ( Create repository
) 。
修改配置
用你喜欢的二进制文本编辑器 ( 记事本 ) 打开 _config.yml
,查找 deploy:
,将这部分修改为 :
deploy:
type: git
repo: [email protected]:{{你的 GitHub username}}/{{你的 GitHub username}}.github.io.git
branch: master
例如我的 :
deploy:
type: git
repo: [email protected]:FlyingSky-CN/FlyingSky-CN.github.io.git
branch: master
保存。
安装插件
在你的 hexo
站点目录下用 Git Bash
运行下面的命令 ( 需要等待,我等了 22.33s
) :
npm install hexo-deployer-git --save
一键部署
在你的 hexo
站点目录下用 Git Bash
运行下面的命令 ( 需要等待 ) :
hexo d
完成后会提示 INFO Deploy done: git
搞定
然后你就可以通过 https://{{你的 GitHub username}}.github.io
访问你的站点了,比如我的是 https://FlyingSky-CN.github.io/ 。
写文章?
在你的 hexo
站点目录下用 Git Bash
运行下面的命令 :
hexo new '{{文章名称}}'
运行后 source\\_posts\\
目录下就多了 {{文章名称}}.md
文件,用你喜欢的二进制文本编辑器 ( 记事本 ) 打开这个文件,hexo
默认生成了头部信息。
文件内容结构如下 :
---
title: {{文章名称}}
date: {{文章时间}}
categories: {{文章分类}}
tags: {{文章标签 [tag1,tag2,tag3]}}
description: {{文章摘要}}
---
{{文章正文}}
文章内容支持 Markdown
语法。
编辑完文章后 hexo d -g
即可一键生成并上传。
进阶
绑定域名
首先你需要有一个属于自己的域名。
在 DNS 解析中添加想要的主机记录 CNAME
到 {{你的 GitHub username}}.github.io
。
在你的 hexo
站点目录下的 source\\
目录中,新建一个名为 CNAME
的文件 ( 无后缀 ) ,用你喜欢的二进制文本编辑器 ( 记事本 ) 打开这个文件,里面填写你的域名 :
- 如果你填写的根域名的,比如
fsky7.com
,那么无论是访问fsky7.com
还是www.fsky7.com
,都会自动跳转到fsky7.com
- 如果你填写的是主机名
www
的,比如www.fsky7.com
,那么无论是访问www.fsky7.com
还是fsky7.com
,都会自动跳转到www.fsky7.com
- 如果你填写的是其它子域名,比如
blog.fsky7.com
,那么访问blog.fsky7.com
没问题,但是访问fsky7.com
,不会自动跳转
我在这里用 hexo.blog.fsky7.com
做演示 :

绑定了新域名之后,原来的 {{你的 GitHub username}}.github.io
并没有失效,而是会自动跳转到你的新域名地址。
然后 hexo d -g
一键部署即可。
常用命令
常见命令
hexo new "postName" # 新建文章
hexo new page "pageName" # 新建页面
hexo generate # 生成静态页面至public目录
hexo server # 开启本地预览服务器
hexo deploy # 部署到远端
hexo help # 查看帮助
hexo version # 查看Hexo的版本
缩写
hexo n == hexo new
hexo g == hexo generate
hexo s == hexo server
hexo d == hexo deploy
组合命令
hexo s -g # 生成并本地预览
hexo d -g # 生成并上传
结束
你可以通过以下链接访问我在写这篇文章的同时建立的 hexo
站点 :

鸣谢
本文参考由 小茗同学 创作的文章 使用hexo+github搭建免费个人博客详细教程-好记的博客 ,本文的部分内容使用了该文章部分内容且进行了部分修改。