Crazy Boy

  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

使用hexo在github上搭建自己的博客

发表于 2015-11-25 | 更新于 2015-12-10 | 分类于 技术

最近想写个博客玩一样,就尝试了hexo,使用github.io可以搭建一个自己的博客,把静态文件项目托管到github上,可以写博客,可以使用markdown语法,也可以展示作品.灵活性高.但是有较大的难度.

node,git版本变化日新月异,每段时间都会有不同,而这个小不同可能直接导致搭建失败.这里把我搭建的过程记录下来.如果将来搭建失败,可以参考,下载对应的版本尝试.

我使用的版本(mac系统下:)

1
2
3
node: v0.10.22
git: git version 2.3.2
hexo: 3.1

搭建步骤

安装好node和git,注册好github账号.

注意:用户名一定不能有大写.
想下载最新的git可以尝试这个地址: http://msysgit.github.io/

安装hexo

1
npm install -g hexo

这里常常安装了一半就卡住装不下去了,推荐安装淘宝镜像:

1
npm install -g cnpm --registry=https://registry.npm.taobao.org

创建hexo文件夹

自己找一个喜欢的路径,创建hexo文件夹,例如在 ~\hexo下的.
cmd窗口切换到对应的目录下,然后执行初始化,等待结束

1
hexo init

安装依赖

继续执行,安装好所有的依赖

1
npm install

完成本地安装

继续在项目目录下~\hexo执行一下语句

1
2
3
4
// 生成文件
hexo generate
// 开启服务器
hexo server

然后在打开浏览器 localhost:4000 ,就可以看到,本地已经安装好了.

在github上创建博客仓库

  选择New repository跳转的后如下填写:(其中Repository name的格式是 ‘用户名’.github.io),然后点创建仓库。

创建SSH keys,并且配置到github上

  具体的请参考ssh的指导文档,很简单的

配置_config.yml文件并发布

在 ~\hexo 下,有一个文件叫 _config.yml,打开它,拉到最底下,做如下修改: 

1
2
3
4
deploy:
type: github //改成github
repository: https://github.com/renliufeng/renliufeng.github.io //改成自己的用户名
branch: master

配置完以后还是在~\hexo下执行:

1
2
hexo generate
hexo deploy

执行完以后,如果报错 Error: Deployer not found : github,则执行如下命令:

1
npm install hexo-deployer-git --save

同时修改 _config.yml :

1
2
deploy:
type: git //改成git

然后再执行:

1
2
hexo generate
hexo deploy

然后访问: http://renliufeng.github.io/ (用户名改成自己的),就可以看到了.

注意,每次修改本地文件后,需要 hexo generate 才能保存。每次使用命令时,都要在 ~\hexo 目录下


核心命令

常用命令

1
2
3
4
5
6
7
$ hexo init #初始化
$ hexo new [layout] "postName" #新建文章
$ hexo new page "pageName" #新建页面
$ hexo generate #生成静态页面至public目录
$ hexo server #开启预览访问端口(默认端口4000,'ctrl + c'关闭server)
$ hexo deploy #将.deploy目录部署到GitHub
$ hexo clean //清楚缓存和发布文件

简写命令

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 先生成静态页面,再部署到github
$ hexo s -g 先生成静态页面,再本地开启server

问题解决

(1) hexo可能更新过了,所以老的hexo可能会报错:

1
2
3
{ [Error: Cannot find module './build/Release/DTraceProviderBindings'] code: 'MODULE_NOT_FOUND' }
{ [Error: Cannot find module './build/default/DTraceProviderBindings'] code: 'MODULE_NOT_FOUND' }
{ [Error: Cannot find module './build/Debug/DTraceProviderBindings'] code: 'MODULE_NOT_FOUND' }

解决办法如下,执行:

1
npm install hexo --no-optional

Hello World

发表于 2015-11-25 | 更新于 2015-11-27 | 分类于 技术

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment

1…34
Steven Ren

Steven Ren

17 日志
3 分类
19 标签
RSS
GitHub Weibo
Links
  • MacTalk
  • IIssNan
  • WooYun
  • InfoQ
  • 廖雪峰
  • 阮一峰
  • IT江湖
  • 四火的唠叨
© 2015 – 2019 Steven Ren
访问用户: 人
访问次数: 次 博客全站共: 字