记录一下GitHub Pages + Hexo的博客搭建过程,目录如下,
0. Overview
1. Github上创建一个repo.
2. 本地安装Hexo
3. Github双分支便携性设置
4. 成品效果
5. Reference
Overview
- 个人博客实现可以有很多方案,cnblog, jianshu, github-page, 自购服务器等。今天试试github page方案
-
GitHub Pages是一个静态页面托管服务,也就是说是一个存放
index.html
文件的地方 -
Hexo是一个基于Node.js的静态站点生成框架,能够将博主写的
Markdown
解析成index.html
Github上创建一个repo.
命名规范是yourname.github.io
,选上README
, .gitignore
和LICENSE
,这样就自动创建了origin master branch。

本地安装Hexo
个人是Windows 10,步骤如下,
打开CMD,输入npm install -g hexo-cli
,如果有代理可以设置set http_proxy=http://host:port
,最后通过hexo -v
查看安装是否成功。

Github双分支便携性设置
Hexo虽然是本地的,但是很多时候我们不是一个电脑走天下,工作用电脑,私人用电脑,可以一篇博文历时很久,经手很多电脑,此时不仅要将index.html
上传到github,同时还要将hexo环境配置
也上传到github。以便换电脑之后能够同时拉取2份内容,保证博客主题风格不变,历时内容依旧。
可以是一个repo存放一类;也可以是一个repo里的一个branch存放一类。当然后者更优雅一点,git branch就能够切换。
首先在create new repo的时候就自动创建了一个master branch,
- clone
yourname.github.io
到本地 - 本地生成一个
hexo
用于专门存放hexo环境配置
然后push到origin
git branch -a
- 在本地新建一个空的临时文件夹,然后cd过去,执行
hexo init
,初始化静态网站所需要的所有文件
hexo init
- copy上一步生成的所有文件到
yourname.github.io
copy files generated by hexo init
- 修改
_config.yml
里面的deploy,yourname.github.io
的master分支(master存放hexo生成的静态html文件)
配置html存放的origin分支
- 进行个性化配置(title, author),然后生成第一篇博文
hexo n "My First Post"
,修改./yourname.github.io/source/_posts/My-First-Post.md
- 预览效果,
hexo clean && hexo g && hexo s
,然后打开localhost:port看效果
预览
- 预览效果不符合预期,再修改My-First-Post.md的内容和排版;符合预期就将
hexo g
所生成的内容推送到origin hexo(origin hexo是保存hexo环境配置的分支,注意.gitignore用的是hexo init生成的,而非create repo时所带的,当然也可以在create repo的时候不勾选.gitignore这一栏)
git add .
git commit -m “…”
git push origin hexo
origin hexo
- 符合预期就将
hexo g
所生成的内容通过hexo d
也推送到origin master(origin hexo是保存静态html文件)。这里使用的是Windows CMD
而不是Git Bash
,因为我没有指定global git user和email,而CMD会提示输入,git bash则不会导致一直卡着;当然也可以通过SSH免密绑定Github和本地环境。
hexo d
origin master
- check
https://yourname.github.io
and enjoy your trip
成品效果
基于最原始的Hexo Landscape主题,只进行了2项定制,
- TOC
- READ MORE
至于更多的样式,可以根据个人喜好自行酌情添加。
图床用的是jianshu,个人觉得jianshu可以直接粘贴,比较方便。当然也可以保存为本地图片,然后上传到github里,直接使用github的图片地址来作为blog的图片URL。
网友评论