Hexo+GitHub搭建博客

安装环境

安装note.js

1.首先安装homebrew

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

2.安装note.js

1
2
3
brew link node
brew uninstall node
brew install node

安装Git

1
brew install git

安装Hexo

创建安装目录,这里以blog为例

1
2
3
4
5
6
7
$ cd blog
$ npm install hexo-cli -g
$ hexo init blog
$ cd blog
$ npm install
$ hexo g # 或者hexo generate
$ hexo s # 或者hexo server,可以在http://localhost:4000/ 查看

现在我们打开http://localhost:4000/ 已经可以看到一篇内置的blog了。

Hexo常用命令

  1. hexo generate (hexo g) 生成静态文件,会在当前目录下生成一个新的叫做public的文件夹

  2. hexo server (hexo s) 启动本地web服务,用于博客的预览

  3. hexo deploy (hexo d) 部署播客到远端(比如github, heroku等平台)

另外还有其他几个常用命令:

1
2
$ hexo new "postName" #新建文章
$ hexo new page "pageName" #新建页面

常用简写

1
2
3
4
$ hexo n == hexo new
$ hexo g == hexo generate
$ hexo s == hexo server
$ hexo d == hexo deploy

常用组合

1
2
$ hexo d -g #生成部署
$ hexo s -g #生成预览

Hexo主题设置

这里以主题next为例进行说明。

安装主题

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

启用主题

修改Hexo目录下的_config.yml配置文件中的theme属性,将其设置为next。

更新主题

1
2
3
4
$ cd themes/next
$ git pull
$ hexo g # 生成
$ hexo s # 启动本地web服务器

现在打开http://localhost:4000/ ,会看到我们已经应用了一个新的主题。

Github Pages设置

什么是Github Pages

GitHub Pages 本用于介绍托管在GitHub的项目,不过,由于他的空间免费稳定,用来做搭建一个博客再好不过了。

每个帐号只能有一个仓库来存放个人主页,而且仓库的名字必须是username/username.github.io,这是特殊的命名约定。你可以通过http://username.github.io 来访问你的个人主页。

这里特别提醒一下,需要注意的个人主页的网站内容是在master分支下的。

创建自己的Github Pages

在自己的GitHub创建仓库username.github.io

使用hexo deploy部署Hexo到Github Pages

hexo deploy可以部署到很多平台,具体可以参考这个链接. 如果部署到github,需要在配置文件_config.xml中作如下修改:

1
2
3
4
deploy:
type: git
repo: git@github.com:jiji262/jiji262.github.io.git
branch: master

然后在命令行中执行

1
hexo d

即可完成部署。

试着打开连接username.github.io应该就可以打开你的博客了

踩坑提醒

1)注意需要提前安装一个扩展:

1
$ npm install hexo-deployer-git --save

2)如果出现下面这样的错误,

1
2
3
4
5
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

则是因为没有设置好public key所致。
在本机生成public key(参考github帮助):

1
#ssh-keygen -t rsa -b 4096 -C "xxx@xxx.com"

然后在#user_id/.ssh目录下会生成两个文件,id_rsa.pub和id_rsa.
然后登陆github,在SSH设置页面添加上刚才的public key文件也就是id_rsa.pub的内容即可。