上次用octopress搭建了一个github博客,但是一直没在上面写文章,还是用的csdn,最近看到大家都在用hexo搭建github博客,效果的确好看,所以就又搭建了一个hexo博客,以后要逼着自己学习一下markdown。创建octopress过程如下:http://blog.csdn.net/xuewater/article/details/40146257
由于hexo是由Node.js驱动的一款快速、简单且功能强大的博客框架,因此需要先安装NodeJS。NodeJS的安装过程基本直接“NEXT”就可以了。(windows的安装msi文件在过程中会直接添加path的系统变量,变量值是你的安装路径,例如“C:\Program Files\nodejs”)
安装完成后可以使用cmd(win+r然后输入cmd进入)测试下是否安装成功。方法:在cmd下输入node -v,出现下图版本提示就是完成了NodeJS的安装
。
npm的安装。由于新版的NodeJS已经集成了npm,所以之前npm也一并安装好了。同样可以使用cmd命令行输入"npm -v"来测试是否成功安装。如下图,出现版本提示便OK了。
默认情况下上述组件都是安装在C:\Program Files\nodejs\node_modules文件夹下 这也是nodejs相关组件的自动查找路径默认情况下,npm的路径是C:\Users\xuwt\AppData\Roaming\npm,而且path路径已经配置:
C:\Program Files\nodejs\;C:\Users\xuwt\AppData\Roaming\npm这个是安装的时候自动加入的。
npm安装之后就可以安装hexo了:
npm install -g hexo-cli
npm install hexo --save
hexo安装完成之后,根据自己喜好建立目录(如E:\Project\GitHub\hexo
),打开dos窗口执行hexo init命令。也可以指定文件夹位置来初始化:hexo init <folder>
如果出现:
那么就执行一下 npm install命令。
Hexo提供丰富的插件,安装方法都是一样的。
npm install <plugin-name> --save
我安装了以下的常用插件:
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 [email protected] --save
npm install [email protected] --save
npm install hexo-generator-feed@1 --save
npm install hexo-generator-sitemap@1 --save
继续执行以下命令,成功后可登录localhost:4000查看效果
hexo server
现在安装的比较多的是pacman和jacman的主题,jacman是在pacman的基础上做了很多优化,推荐jacman,具体说明:https://github.com/wuchong/jacman
主题的安装:
git clone https://github.com/wuchong/jacman.git themes/jacman
_config.yml文件
:
cd themes/jacman
git pull origin master
然后就是部署到github,如果hexo是2.X版本的需要在_config.yml文件中配置以下内容:
deploy: type: github repository: [email protected]:<name>/<name>.github.com.git branch: master
如果hexo是3.x版本就会出现下面的错误,把github改成git就行了。
hexo deploy
ERROR Deployer not found: github
最后执行:
hexo generate
hexo deploy
其原理就是hexo在执行hexo generate
时会在本地先把博客生成的一套静态站点放到public
文件夹中,在执行hexo deploy
时将其复制到.deploy
文件夹中。Github的版本库通常建议同时附上README.md说明文件,但是hexo默认情况下会把所有md文件解析成html文件,所以即使你在线生成了README.md,它也会在你下一次部署时被删去。怎么解决呢?
在执行hexo deploy
前把在本地写好的README.md文件复制到.deploy
文件夹中,再去执行hexo deploy
。
最后附上hexo的简写命令:
hexo n #new
hexo g #generate
hexo s #server