本文详细概述了从零开始使用 GitHub Pages + Hexo 建造一个属于自己的博客。

什么是GitHub Pages 、Hexo

  • GitHub Pages

GitHub Pages 是一个静态网页托管服务。被设计来管理你的来自一个GitHub 库的个人的、组织的、或者项目的页面。

  • Hexo

根据官方介绍,Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

安装 git

  • Windows

下载并安装 git

  • Mac

1.安装 Hmoebrew

1
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2.安装 git

1
$ brew install git

注:如果在编译时可能会遇到问题,请先到 App Store 安装 Xcode,Xcode 完成后,启动并进入 Preferences -> Download -> Command Line Tools -> Install 安装命令行工具。

  • Linux

Ununtu、Debian

1
$ sudo apt-get install git-core

Fedora、Red Hat、CetOS

1
$ sudo yum install git-core

安装 node.js

  • Node.js 为大多数平台提供了官方的 安装程序

  • 推荐通过 nvs 或者 nvm 安装,以避免可能会出现的权限问题。

  • Mac

1
$ brew install node

Mac 用户如果在尝试安装 Hexo 的过程中出现 EACCES 权限错误,请遵循由 npmjs 发布的指导修复该问题。强烈建议不要使用 root、sudo 等方法覆盖权限

安装 Hexo

1
2
3
4
5
$ npm install -g hexo-cli
$ hexo init 'foldername'
$ cd 'foldername'
$ npm install
$ hexo server

注:foldername是你想要新建博客文件的名称

注册 GitHub

如果没有GitHub账号,去 GitHub 官网 注册一个,详细步骤不再阐述,不知道的百度一大堆。

创建一个 GitHub Pages

  • 登录GitHub后,点击页面右上角加号,如下图所示:

Create a New Repository 1

  • username为你想要的博客名,然后选择public,加入README,不加也可以后面自己创建。

Create a New Repository 2

  • 点击 Create repository完成创建。

配置GitHub的SSH Key

  • 输入以下命令生成密钥 SSH Key

以前用过 ssh-keygen 生成过密钥,用以下命令

1
$ ssh-keygen -t rsa -C 'email@.xx.com' -f ~/.ssh/id_rsa_github

以前没用过 ssh-keygen 生成过密钥,用以下命令

1
2
3
$ git config --global user.name "用户名"
$ git config --global user.email "邮箱地址"
$ ssh-keygen -t rsa -C 'email@.xx.com'
  • 输入以下命令并将输出内容复制
1
$ cat ~/.ssh/id_rsa_github.pub
  • 登陆到GitHub,点击右上角头像,选择 Settings ,然后选择 SSH and GPG keys ,再点击 New SSH key ,输入你想命名的 Title ,最后将刚才复制的密钥粘贴进去,点击 Add SSH key

添加主题

  1. 官方Hexo主题社区看一个你自己喜欢的主题,我选的是 Butterfly这个主题
  2. 下载主题文件到 Hexo 的 foldername 的下的theme里
  3. 修改 flodername 下的 _config.yml 文件下面选中部分为你上一步放在theme文件夹里的文件名:

Change Hexo Theme

部署到GitHub

  • 进入前面 Hexo 的 foldername 文件夹,修改 _config.yml 的下面部分:

Change Blog URL

Change Deployment Information

选中部分根据自己的账号名修改

  • 安装部署插件
1
$ npm install hexo-deployer-git --save
  • 执行部署
1
$ hexo g -d

过几分钟就可以访问网址