使用 GitHub & Hexo & Next 搭建个人博客
该 Blog 始于购买了一个域名,本想租用 VPS 搭建网站,用来练手。思来想去却找不到一个适合的。后发现 GitHub 的 Pages:
You can put anything here you like.
前言
搭建博客,是为了记录我自己的学习、工作、生活,用于自己查阅、反思、总结,也用于分享与交流。至于为什么要选择这样的方式来搭建博客:
面对这样一个又免费,又简单,又轻量,一次配置,就只需要你专心于写作的方式,难道不好吗?
简介
GitHub
GitHub 是一个面向开源及私有软件项目的托管平台,Git 是其版本控制工具。作为开源代码库以及版本控制系统,GitHub 在全球拥有大量的开发者用户,创造、开发、分享了海量的开源代码。足以说其改变了整个软件行业。
Git
Git 是一个免费、开源的分布式版本控制系统,能够高效的处理任何项目的版本管理。最早是由 Linus Torvalds 为了管理 Linux 内核开发而开发的版本控制软件。目前最多的被应用于软件开发领域,由于其无线分支,本地提交等特性,还可适用于更多领域。只要你所做的事经常需要修改,需要后悔药,需要多人协作,也许 Git 会适合你。
GitHub Pages
GitHub Pages 是 GitHub 中的一个服务。GitHub 中,项目的 Web 页面会显示代码库中的所有文件,如果项目比较小,那么文件较少的情况下,还能较为迅速的了解和掌握整个项目。一旦项目大了,文件太多,往往让对该项目有兴趣的人摸不着头脑。故设计之初是为了让项目创建者或其主要成员,编写一个静态页面托管在 GitHub 服务器上,用于其他人了解项目的架构及适用领域、使用方法等与项目有关的介绍。
Hexo
Hexo 是一个依赖于 Node.Js 技术的快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。支持 Markdown、一键部署、强大的插件系统和丰富的插件。中文支持良好。
NexT
NexT 是一款 Hexo Theme,主旨在于简洁优雅且易于使用。
安装配置
Github Pages 的创建
- 注册 GitHub 账号,进入 GitHub,右上角点 Sign up 进入注册页面或在首页填写相应信息点击 Sign up for GitHub 注册。
- 注册成功后,进入你的 GitHub 个人主页
https://github.com/yourusername
,点击Repositories
->New
,创建一个新的代码仓库:- Repository name:
yourusername.github.io
(必须) - 其余选项默认即可
yourusername
即是你的账号名字
- Repository name:
- 可以通过
https://github.com/yourusername/yourusername.github.io
访问你的项目。 - 稍等片刻,即可以通过
yourusername.github.io
访问。
Git 的安装
macOS 自带 Git,若不习惯使用命令行,可单独安装客户端。
- 下载与安装
- 通过 Git 官网下载 Git Download
- 通过 GitHub 下载 GitHub Download
- macOS 可使用 HomeBrew 安装:
brew install git
- Linux (Ubuntu, Debian):
sudo apt-get install git-core
- Linux (Fedora, Red Hat, CentOS):
sudo yum install git-core
Node.Js 的安装
- 下载与安装
Hexo 的安装与使用
Node.js 与 Git 是必要的安装条件,若命令执行过程中报错,通常是因为没有权限,加上
sudo
即可
以上程序安装完成后,即可安装 Hexo
1
$ npm install -g hexo-cli
Hexo 初始化
1
2
3$ hexo init <folder>
$ cd <folder>
$ npm install前两句中
<folder>
可以先通过 mkdir 创建文件夹后,cd
到新建的文件夹,直接输入hexo init
即可初始化当前所在文件夹,从此处开始,往后的命令都建议在该文件夹下执行此时打开
<folder>
中的_config.yml
文件,进行简单配置1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21# Site
title: 网站标题
subtitle: 网站副标题
description: 描述,用于 SEO
author: 作者
language: 网站使用的语言
timezone: 时区
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://yourusername.github.io
root: / 网站根目录
permalink: :year/:month/:day/:title/ 文章的链接
permalink_defaults: 设置 permalink 中参数的默认值
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: https://github.com/yourusername/yourusername.github.io.git
branch: master生成静态文件
1
2
3$ hexo generate
# or
$ hexo g启动服务器
1
$ hexo server
默认情况下,访问网址为:http://localhost:4000/,按
ctrl + c
终止运行。打开浏览器,访问即可看到属于你的博客。
部署到 GitHub,部署完成后,可访问 http://yourusername.github.io 查看
1
2
3$ hexo deploy
# or
$ hexo dHexo 提供了部署命令,可以直接部署到 GitHub。在第三步设置的 Deployment 即为需要部署到的地方。
Hexo Theme
到目前为止,博客已经创建完成,配置主题。
访问 NexT,clone or download 到本地
解压缩或复制到
<blog folder>/<themes folder>
,修改文件夹名称hexo-theme-next
==>next
打开
_config.yml
,修改 theme 参数,如下1
2
3
4# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: next验证主题是否生效
1
$ hexo server
当你看见的界面与之前的不同即说明,主题生效。当前 NexT 默认的 Scheme —— Muse。
NexT 支持三种 Scheme,分别是:
- Muse - 默认 Scheme,这是 NexT 最初的版本,黑白主调,大量留白
- Mist - Muse 的紧凑版本,整洁有序的单栏外观
- Pisces - 双栏 Scheme,小家碧玉似的清新
1
2
3
4
5
6
7
8# ---------------------------------------------------------------
# Scheme Settings
# ---------------------------------------------------------------
# Schemes
#scheme: Muse
#scheme: Mist
scheme: Pisces再次部署到 GitHub,可访问 http://yourusername.github.io 查看
1
$ hexo d
域名绑定
假如你拥有一个属于你自己的域名,也可绑定到 http://yourusername.github.io。
在你的代码仓库中,https://github.com/yourusername/yourusername.github.io 创建一个没有后缀的文件,命名为
CNAME
,文件里面只需要写你的域名,比如我的1
yamdestiny.xyz
也可在本地创建后提交到 GitHub
选择一个提供域名解析服务的域名商,设置以下解析。
等待解析生效后,就可以通过你自己的域名访问了。
153、154 二选一。先 ping 一下。
主机记录 记录类型 记录值 @ A 192.30.252.153 @ A 192.30.252.154 www CNAME yourusername.github.io.
结语
这只是我在搭建过程中的一些基本流程,记录下来以备自己查询或让有需要的朋友少走一些弯路。以上是最基本的一套流程,当你搭建完成后,若对目前的功能不太满意,可以参考 Hexo 的官网,以及 Next 的官网,来进行一些进阶配置。让你的博客更符合你的心意。后续我也会将我的配置,细数记录到我的博客以便查阅。
参考资料
- Hexo 官网 https://hexo.io/zh-cn/
- Next 使用文档 http://theme-next.iissnan.com/