使用Git Pages 和 Hexo搭建免费的个人博客

从我个人的使用来说,如果熟悉了这个流程,其实使用git搭建blog还是挺简单的,但是网上的各种教程,把网放的太大,以致于,很多地方放出去收不回来,又由于表述和语言能力的差异,加深了使用者的理解成本。于是,我想到写这样的一个教程,这里我假设你已经知道了mac下的命令行的使用方法,并且了解过git和nodeJs。为了避免太多的方法让新手理解分叉,这里我只演示一种方法,其他的,各位有兴趣,自己去官网研究吧。

前置条件

因为个人的工作机,是mac,故这里的演示都以osx系统为准。

  • 1、注册Github账号
  • 2、安装NodeJS
  • 3、安装Hexo
一、注册Github

前往Github注册一个账号。并新建一个仓库,仓库名要与用户名一致,并且仓库名要为github.io的格式。

二、配置本地Git服务
先要安装Git

brew 安装

brew是Mac下的包管理器,包管理器,可以理解为类似于360软件管家那样的集中软件下载中心。

使用brew首先要安装brew。

1
2
3

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

安装git

1
brew install git
1、配置用户名和邮箱
1
2
git config --global user.name "Your Name"
git config --global user.email "email@example.com
2、生成ssh key

生成ssh key的作用是为了避免,我们在推送代码到github上的时候,需要频繁输入账户密码的问题。

1
2
ssh-keygen -t rsa -C "your_email@youremail.com"

复制生成的 ssh key到GitHub的密钥库里。

1
cat ~/.ssh/id_rsa.pub

最终展现的数据

1
2
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKmWZgPFniv8gmBvCwk6QQI2PwJrSnxi3kE8guJZOLSvYWm3ntJimj/IpW3rZHE7+5+jWhSQZt3PDZIvIiyhy0qoPuDTH+icp8vycPHF0zPnrojjVCYR1qSdE3d6EKc8xYy1u4ol0lL+xyWopGuVJiV3ha/sU1EqoVbteYj0xnS4XJfdiWYF4FC+Hq7pWA4vgxGy2EVUnPBSVXPcshV97OczQyROX7qgJgCzdQXfPhSRps4/AzQjJwDdV/6u3WUIETaTPamoZE4ta/FE6YNyGJ4jVV+S8PVv3OZVi9l+T4i/HwP8AxCJ8Sig1roUDRLlL3L12AzXed3v+cHCAGV8Tl haiwanwu@163.com

3、使用ssh与github建立关联

在github网站的设置里,找到 ssh key,将我们生成的密钥,粘贴进去,然后保存。

二、安装NodeJs

NodeHexo服务的基础,因此我们要先前往NodeJS的官网,下载并安装Node程序。

1、安装

brew 安装

1
brew install node

伴随着Node一起二来的还有Npm,Npm是Node的包管理器

验证

1
node -v
三、安装Hexo

Hexo是一个基于NodeJs的静态站点生成器。mac下,由于权限的问题,安装的时候,要带上sudo.

1
sudo npm install -g hexo-cli
使用Hexo快速生成站点
1
2
3
4
5
6
7
8
9
10
11
hexo init <folder>
//初始化

cd <folder>
//进入

npm install
//安装需要的依赖

hexo server
//启动本地服务器

通常在这一步后,就会启动一个本地的服务器,出现了 localhost:4000就可以在浏览器访问。

四、部署代码到GitHub

因为,我们是使用Hexo的工具,进行Git代码的部署。所以,这里我们不需要像常规的使用push,pull,进行操作。

只需要三步

1、修改 _config.yml 配置文件

1
2
3
4
5

depoly:
type:git
repository:<account>
branch:master

仓库名直接复制,你的git仓库地址,分支默认为master。

2、安装Hexo扩展
1
sudo npm install hexo-deployer-git --save
3、部署
1
2
3
4
5
hexo g
//生成

hexo d
//部署

大功告成,访问你的 github.io 地址,验证。

五、使用自己的域名
增加CNAME文件

这一步的目的,是为了让 github与你的域名建立映射关系.

1
2
3
4
5
6
7
8
9
10
11
12

//在 初始化的目录找到 **_source**目录,新建一个 **CNAME**文件。

vi _source/CNAME

//填写你的域名

//比如我的

articlewu.top

//保存并推出

然后重新使用 hexo生成并部署提交至Github.

前往阿里云添加域名解析,

增加一个 CNAME域名解析,至比如我的 wuwanhai.github.io

注:域名不需要备案