hexo+github构建自己的Blog

这几天在学习git和github,看了阮一锋老师的几篇关于git和github的博客之后,发现了原来可以自己搭建一个无限流量的Blog,这时的我心里有点小激动,于是也决定自己试着搭建属于自己的Blog。

下面跟大家分享使用HEXO和github搭建Blog的整个过程。

环境

首先,要把我们需要的环境搭建起来。

安装git

在项目中使用了git-bash,所以需要下载并安装git。在这个时候,即使你对git不了解,也可以继续,这里对git的要求不高。

安装Node.js

hexo是基于Node.js,所以需要下载并安装Node

安装hexo

hexo是一款基于Node.js的静态博客生成器,首先我们要把hexo安装到我们的环境中。
打开git-bash,执行如下命令,hexo就安装好了。

1
$ npm install hexo-cli -g

命令成功执行后,会显示路径,由这个路径进入相应的文件夹,我们会发现npm文件夹里面多了一个hexo文件和一个hexo.cmd文件,这就表明hexo安装成功。

hexo

hexo实现搭建博客

首先,我们要新建一个文件夹来存放我们的博客项目,这里我把这个文件夹命名为hexo。

进入hexo文件夹,点击鼠标右键,选择Git Bash Here打开git-bash,执行如下命令初始化hexo,此时hexo在该文件夹下搭建项目需要的文件。

1
$ npm hexo init

接着,执行如下命令安装项目所需的依赖包。

1
$ npm install

然后,执行如下命令。

1
2
$ hexo g
$ hexo s

最后,打开http://localhost:4000/,嘿嘿,此时你应该看到了一个Blog的页面。是不是有点小激动呀~

为什么会这样呢?下面我解释一下hexo在搭建博客中会用到的几个命令。

1
2
3
4
$ hexo g    //g:generate,生成静态文件
$ hexo s //s:server,启动启动服务器,实现本地预览
$ hexo d //d:deploy,将本地文件发布到github上
$ hexo n //n:new,新建一篇文章

弄懂这几个命令的含义之后,应该就应该粗略知道了hexo是怎么使用的。

更换主题

hexo的主题有很多,我们可以选择我们自己喜欢的主题

下面以next介绍如何更换主题。

首先,在hexo文件夹中,启动git-bash,执行如下命令实现next主题的安装,安装完成后,会在themes文件夹中生成next文件夹。

1
$ git clone https://github.com/iissnan/hexo-theme-next.git themes/next

接着,打开hexo/_config.yml,修改主题为next。

1
theme: next

然后,我们进入hexo/themes/next/_config.yml进行修改,具体修改可参考http://theme-next.iissnan.com/theme-settings.html

最后,更新主题,进入hexo/themes/next,执行如下命令更新主题。

1
$ git pull

修改网页小图标

制作一张.ico的图片文件,然后命名为favicon.ico。然后把该文件放置到根目录下,即放到source文件夹下即可。

修改个人头像

打开http://localhost:4000/,在控制台里面查看个人头像的地址以及头像图片的命名,然后在根目录下建立个人头像所需的文件夹,把头像图片命名为所查找到的名称,最后把图片放置到文件夹中即可。

github

把博客项目托管到github上,就能实现无限流量的Blog。

如果你没有接触过github,建议看下慕课网上happypeter老师的版本控制工具-搬进Github

前提

首先,我们要有一个github账号,没有的话可以注册一个github账号

创建repository

repository就是一个仓库,用来放置我们的代码文件。

首先我们要创建一个repository,命名必须严格按照name.github.io,例如:xxxBW.github.io

把本地项目部署到github

1.配置_config.yml文件

下面例子中第一个xxxBW为github用户名,第二个xxxBW为repository的名字。(注意:‘:’后面必须带一个空格)

1
2
3
4
5
deploy:
type: git
repository: git@github.com:xxxBW/xxxBW.github.io.git
branch: master
$ hexo s

2.配置SSH

首先,在本地创建ssh key,后面的your_email@youremail.com改为你的邮箱。之后会要求确认路径和输入密码,这时候我们只要一路回车就好,成功之后会在~/下生成.ssh文件夹,进入该文件夹打开id_rsa.pub,复制里面的key。

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

接着我们来到github,点击右上角的头像下拉列表,进入Settings,选择SSH Keys,选择New SSH key,title随便填,把刚才的复制的key粘贴进去。

然后我们来验证配置SSH是否成功,执行如下命令。第一次会提示是否continue,yes的话看到 You’ve successfully authenticated, but GitHub does not provide shell access 就表示配置成功。

1
$ ssh -T git@github.com

3.验证邮箱

如果github提示邮箱还没有验证的话,进入Settings,点击Emails,添加邮箱然后发送验证邮箱,收到邮件后进入你的邮箱进行验证。

4.配置username和email

把本地仓库部署到github之前,要先设置username和email,执行如下代码。

1
2
$ git config --global user.name "your name"  
$ git config --global user.email "your_email@youremail.com"

5.部署本地项目到github

进入要上传的仓库,打开git-bash,执行如下命令。

1
$ git remote add origin git@github.com:xxxBW/xxxBW.github.io.git
1
2
$ hexo g
$ hexo d

接着执行上面两行命令,执行第二条命令的时候可能需要输入用户和密码,输入github用户和密码就ok了。

这样,我们的博客就搭建起来,发布到github上面了。访问xxxBW.github.io就能看到自己的博客啦~

发布文章

1
$ hexo n "learn-hexo"

执行上面的命令,learn-hexo是文件名,会生成一个.md文件,打开.md文件就可以写博客啦~

写完博客后,执行如下代码生成静态文件然后发布到github上,这样,博文就发布成功了~

1
2
$ hexo g
$ hexo d

多说评论

我们写博文,当然是希望能够给其他人帮助,那么评论肯定是要有的。现在国内使用的主要是多说。下面 介绍一下如何在我们的博文下方添加评论框。

首先,进入多说页面,登录多说并且点击我要安装。
接着创建一个站点,多说域名所填的内容即为suoshuo_shortname,因为我使用的是next主题,主题里面已经配置好了,所以只需在主题配置_config.yml中做如下修改即可。

1
2
3
4
5
# Duoshuo ShortName
duoshuo_shortname: xxxBW

duoshuo_info
admin_enabletrue