用Hexo搭建个人博客并部署到Github上

hexo是由Node.js驱动的一款快速、简单且功能强大的博客框架,支持多线程,数百篇文章只需几秒即可生成。支持markdown编写文章,可以方便的生成静态网页托管在GitHub Pages, Heroku 或其他网站。

1.本地安装hexo

按顺序安装软件于本地电脑上(已安装的可以跳过)
安装Git:

  • Windows电脑下载 msysgit 并执行即可完成安装。
  • Mac电脑可以直接brew以下命令安装,

    1
    brew install git #Mac电脑使用brew安装,此处为注释,下面同理
  • Linux (Ubuntu, Debian)执行以下命令安装:

    1
    sudo apt-get install git-core
  • Linux (Fedora, Red Hat, CentOS)执行以下命令安装:

    1
    sudo yum install git-core

安装node.js:

  • 在 Windows 环境下安装 Node.js 非常简单,仅须 下载 安装文件并执行即可完成安装。
  • mac电脑可以直接通过brew以下命令安装
    1
    2
    3
    4
    #安装命令
    brew install node
    #验证是否安装成功
    node -vnpm -v

安装hexo:
利用 npm 命令即可安装。(在任意位置点击鼠标右键,选择 Git bash

1
npm install -g hexo

创建hexo文件夹:
安装完成后,在你喜爱的文件夹下(如 F:\hexo),执行以下指令(在 F:\hexo内点击鼠标右键,选择 Git bash ),Hexo 即会自动在目标文件夹建立网站所需要的所有文件。

1
hexo init

安装依赖包

1
npm install

本地预览
现在我们已经搭建起本地的hexo博客了,先在本地看看怎么样。执行以下命令启动服务(在 F:\hexo),

1
2
hexo generate #简写方式为hexo g,其他同理
hexo server

然后到浏览器输入 http://localhost:4000看看。

至此,本地博客已经搭建起来了。

2.Github账号设置

注册Github帐号
已有就跳过,没有的,请在此进行注册,步骤很简单,这里就不介绍了。

创建repository
登录github后,将鼠标点击github右上角“+”号,在下拉菜单上,选择“New repository”项,将跳到如下页面,填写库名称,比如我的Github账号是laputaer,那么我应该创建的repository名字应该是laputaer.github.io。
勾选“Initialize this repository with a README”,点击“create repository”,即可完成创建库。



3.博客部署到Github

修改配置文件
打开安装目录下的 _config.yml(在 F:\hexo下),找到deploy并进行如下修改,记得把相应的地方改成你自己的账号或URL。

1
2
3
4
deploy: 
type: git
repository: https://github.com/lapuater/laputaer.github.com.git
branch: master

执行下列指令完成部署

1
2
hexo generate
hexo deploy

注意:
1.有些新用户需要设置 ssh,否则上述命令会失败。ssh 的介绍和设置方法请看官方教程 ,不用担心,很简单。
2.每次修改本地文件后,需要 hexo generate才能保存。每次使用命令时,都要在 F:\hexo目录下。
Okay,我们的博客已经完全搭建起来了,在浏览器访问 http://lapuater.github.io/
就能看到你的成就了!
还有一点,有一些用户在hexo deploy之后会有个这个提示




那么我们要输入我们在git上验证的邮箱,再次hexo deploy就发布上去了。
就可以访问我们的网站了。

常见问题:

1.配置文件_config.yml 编辑了title subtile之类的信息保存后,在git下输入hexo server(或其他指令),出现大量报错,形如’…can not read a block mapping entry…‘?
解决方法:检查_config.yml内容,特别注意冒号后面需要有一个空格,例如:

1
title: Ymuyi's note #这个冒号后面就有个空格

2.hexo deploy之后报错 ERROR Deployer not found: github ?
解决方法:在安装目录下(F:\hexo)右键Git Bash执行命令

1
npm install hexo-deployer-git --save

然后检查根目录下配置文件_config.yml,将deploy 的 type由github改为git

3.hexo deploy之后出现 fatal: ‘username.github.io’ does not appear to be a git repository
解决方法:一是检查 repo 的名字是否合乎规范、是否含有大写字母、config.yml 中的 deploy 配置是否正确,二是把 git bash 关掉,重新打开再执行命令。

4.右键菜单中没有 git bash选项?
解决方法:可以进入开始菜单找到 git bash,然后通过 cd进入相应目录执行命令。

5.在github部署完成之后,马上访问出现404错误?
解决方法:这是正常的,(最多)等待十分钟左右就可以访问了。如果还不行,那很可能是 github 发送给你的验证邮件你没有打开看,据多方反映,验证后就没问题了。

6.shell 命令中输入密码时,你输入之后密码是不显示的,这是为了安全,并非是你没输上。

7.出现乱码的,不要使用 windows 中的「记事本」打开并编辑文件,推荐使用 sublime text,很简单。如果已经在「记事本」中编辑过,需要使用 sublime text 转码为「utf8」。

8.遇到什么其他的问题,不妨删除.deploy 和db.json 再重新生成试一试。

9.关于markdown的问题汇总请看这里

tips:

hexo现在支持更加简单的命令格式了,比如:
hexo g == hexo generate
hexo d == hexo deploy
hexo s == hexo server
hexo n == hexo new

更多内容详见Hexo官方文档,下一节将会介绍hexo博客如何配置网站,如何撰写和发表文章。