前段时间,在一次分享会上发现,不少人不知道 github 的一个强大功能 —— GitHub Pages,今天就介绍下。若是你不想要像新浪、csdn 这类样式丑、页面内容杂的博客网站,或者不想在移植、迁移上浪费精力,又或者不想付出多余的银子买VPS,那么 GitHub Pages 是不错的选择。node
GitHub Pages 有如下几个优势:git
轻量级的博客系统,没有麻烦的配置github
免费空间,享受 Git 版本管理功能shell
使用标记语言,好比 Markdownnpm
无需本身搭建服务器windows
能够绑定本身的域名浏览器
固然他也有缺点:bash
搭配模板系统,至关于静态页发布,每运行生成一次都必须遍历所有的文本文件,网站越大,生成时间越长服务器
动态程序的部分至关局限,好比没有评论,不过有解决方案markdown
基于 Git,不少东西须要定制,不像 Wordpress 有强大的后台
要想搭建漂亮的 blog,还须要模板系统,官方推荐的是 jekyll,可是配置稍复杂,今天推荐另外一个选择 —— hexo,一个简单地、轻量地、基于 Node 的一个静态博客框架。
下面介绍下如何使用 hexo 和 github pages 搭建我的博客。
注意: 本文针对 Windows 平台和 Hexo 3.1.1
主要使用 git bash,若是对 git 命令不熟悉的也可使用 git 客户端进行某些操做
由于要使用 npm,比较简单的方法就是安装 node.js
安装完成后添加 Path 环境变量,使 npm 命令生效
;C:\Program Files\nodejs\node_modules\npm
没有 github 帐号的话,须要注册一个,不赘述
而后建立一个仓库,名字是[yourGithubAccount].github.io
使用 git bash 生成 public ssh key,如下是最简单的方法
$ ssh-keygen -t rsa
C/Documents and Settings/username/.ssh 目录下会生成 id_rsa.pub
将 id_rsa.pub 的内容彻底复制到 github Account Setting 里的 ssh key 里便可
测试
$ ssh -T git@github.com
而后会看到
Hi [yourGithubAccount]! You've successfully authenticated, but GitHub does not provide shell access.
设置用户信息
$ git config --global user.name "[yourName]"//用户名 $ git config --global user.email "[yourEmail]"//填写本身的邮箱
通过以上步骤,本机已成功链接到 github,为部署打下基础。
建立本地目录,而后使用 git bash 或者客户端 clone 以前建立的仓库([yourGithubAccount].github.io)
进入仓库目录,使用 git bash 安装配置 hexo
$ npm install -g hexo-cli $ npm install hexo --save $ hexo init
安装 hexo 插件
npm install hexo-generator-index --save npm install hexo-generator-archive --save npm install hexo-generator-category --save npm install hexo-generator-tag --save npm install hexo-server --save npm install hexo-deployer-git --save npm install hexo-deployer-heroku --save npm install hexo-deployer-rsync --save npm install hexo-deployer-openshift --save npm install hexo-renderer-marked@0.2 --save npm install hexo-renderer-stylus@0.2 --save npm install hexo-generator-feed@1 --save npm install hexo-generator-sitemap@1 --save
安装 ejs,不然没法解析模板
$ npm install
生成 public 文件夹
$ hexo g
浏览器输入 localhost:4000 本地查看效果
$ hexo s
hexo 有不少主题可选,我选了 Jacman,默认支持多说评论、网站统计、分享等功能,只要稍微配置便可使用。能够根据本身需求进行选择。
配置 _config.yml
deploy: type: git repository: git@github.com:[yourGithubAccount]/[yourGithubAccount].github.io.git branch: master
$ hexo d
便可将 hexo 部署到 github 上
提示找不到 git 时
需执行(虽然以前已经执行过)
npm install hexo-deployer-git --save
而后
$ hexo d
便可经过 http://[yourGithubAccount].github.io/ 查看了
$ hexo new "title"
而后在 source/_post 下会生成该md文件,便可使用编辑器编写了
编写过程当中,能够在本地实时查看效果,非常方便
支持 markdown,不了解的自行 google 吧
编写完成后,部署仍是同样的
$ hexo g $ hexo d
若是部署过程当中报错,可执行如下命令从新部署
$ hexo clean $ hexo generate $ hexo deploy
$ hexo new page "about"
该命令会生成 source/about/index.md,编辑便可
$ npm update $ npm uninstall <plugin-name>
npm update -g hexo
在/source/ 目录下新建内容为自定义域名的 CNAME 文件,部署便可(域名设置略)
备注:
Hexo简写命令
hexo n #new hexo g #generate hexo s #server hexo d #deploy
以上是基本操做,质量高的 blog 所带来的好处是不言而喻的,感兴趣的能够行动起来了。