前段時間,在一次分享會上發現,不少人不知道 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 所帶來的好處是不言而喻的,感興趣的能夠行動起來了。