一直都有听说程序员写个人博客对自己的提升有帮助,于是终于下定决心要尝试着搭建一个个人博客。看到一个帖子上说hexo现在比较流行,基于Node的框架,速度更快,于是我就想那就用hexo搭建吧,万万没想到由此我开始一段相当折磨的经历。。。
花了两天的时间,终于把Hexo搭建好了,虽然这个过程非常的DT,但是还是学到了很多的东西。这是我的第一篇博客,我把遇到的问题分享给大家,希望能帮助到大家。
既然决定好了,那就立马去做,于是我就在网上搜了教程,迫不及待的就开始了。在桌面打开Git Bash,然后输入命令:npm install -g hexo
输入好了,觉得下面肯定就会嗖嗖的安装起来了,结果。。。这就出现了我的第一个问题。
如果你也像我这样遇到了这样的情况,那我要告诉你一句话:心急吃不了热豆腐!都还没有安装npm,是不能去用它的,好囧,下面开始正式的安装过程(本文是在windows环境下安装的)。
Node.js安装与环境配置
下载安装文件
下载Node.js,官网http://nodejs.cn/download/我下载的是node-v5.6.0-x86.msi安装Node.js
下载完成之后,双击“node-v5.6.0-x86.msi”,开始安装Node.js。自定义安装在“F:\nodejs”里。
在cmd控制台输入:node -v
,控制台将打印出v0.10.40,如果出现版本提示表示安装成功。
由于新版的Node.js已经集成了npm,所以同样可以使用cmd指令命令行输入npm -v
来测试是否安装成功。出现版本提示则安装成功。
安装相关环境
npm install express -g
npm install jade -g
npm install mysql -g
默认情况下组件都是安装在“F:\nodejs\node_modules”文件夹中,这也是Node.js组件的自动查找路径。安装CoffeeScript
npm install coffee-script -g
确认安装输入coffee -v
,出现版本号表示安装成功。
CoffeeScript 是一门编译到 JavaScript 的小巧语言. 在 Java 般笨拙的外表下, JavaScript 其实有着一颗华丽的心脏. CoffeeScript 尝试用简洁的方式展示 JavaScript 优秀的部分.
CoffeeScript 的指导原则是: “她仅仅是 JavaScript”. 代码一一对应地编译到 JS, 不会在编译过程中进行解释. 已有的 JavaScript 类库可以无缝地和 CoffeeScript 搭配使用, 反之亦然. 编译后的代码是可读的, 且经过美化, 能在所有 JavaScript 环境中运行, 并且应该和对应手写的 JavaScript 一样快或者更快.
CoffeeScript测试
新建cs.js文件,输入:console.log "hello #{i}" for i in [0...5]
在该目录下运行“coffee cs.js”
Node.js的环境基本配置完成了。
所有命令用-g进行全局安装,安装在当前用户下,在磁盘的所有地方都能访问到,否则只能在当前目录下使用。
此外,若出现下面问题“express不是内部或外部指令”是版本的问题,将版本改成3.5.0即可运行。$ npm install -g express@3.5.0
更改完之后输入“express -V”切记,V需要是大写。
安装Hexo并配置
安装
鼠标在任意地方点击右键,选择Git Bash,使用以下命令安装Hexo。npm install -g hexo
如果出现错误,修改“C:\Users\Administrator”下的.npmrc文件。
我的做法是直接删除设置代理,并添加了“registry = http://registry.cnpmjs.org” 就可以安装了。(其实我也不太明白真正的原因,只是试了很久,这样就成功了。)创建Hexo文件夹
安装完成之后,在你喜爱的文件夹,比如我选择“D:\Hexo”创建Hexo文件夹,最好不要选择中文路径,在空白地方点击鼠标右键,选择Git Bash,输入下面命令,Hexo会自动在该文件夹下创建博客所需要的所有文件。hexo init
安装依赖包
npm install
在“D:\Hexo”内执行一下命令hexo generate
hexo server
用浏览器访问“http://localhost:4000” 此时你就可以看到网页上显示一个博客了,Hexo默认的主题是landscape,当然了这个网页是本地的。是不是很开心啊,很激动啊,那么我们继续。注册Github帐号
已经有了就不需要了,进入Github主页进行注册,记住用户名,密码和邮箱。创建repository
repository是仓库的意思,用来存放你得代码。进入Github主页登录之后,点击New repository绿色按钮进行创建,创建的时候需要注意repository的名字,比如我的Github的帐号是echoVic,那么创建的repository的名字是echoVic.github.io。部署本地文件到Github
打开你刚刚创建的echoVic.github.io,找到
复制“https://github.com/echoVic/echoVic.github.io.git”, 打开“D:\Hexo”的_config.yml 文件进行配置。在_config.yml 最下方,添加如下的配置,切记一点:Hexo的配置文件中,任何“:”后面必须都要带一个空格。
如果配置中出现“ERROR Deployer not found : github”的错误,则输入npm install hexo-deployer-git --save
。设置SSH keys
首先要检查是否已经存在SSH keys,在Git Bash输入以下指令:ls -al ~/.ssh
如果不存在就接着往下配置,如果存在的话删除C:\Users\Administrator\.ssh文件中的所有内容。
输入以下指令然后回车,邮箱是你注册Github时候的邮箱。(C是大写)ssh-keygen -t rsa -C "137844255@qq.com"
在这个过程中会提示你输入passphrase,类似于密码,如果你输入了就记住了,会用到。
接下来输入下面的指令,复制SSH keyclip < ~/.ssh/id_rsa.pub
也可以打开C:\Users\Administrator\.ssh文件中的id_rsa.pub文件,复制里面的key。
进入Github,点击右上角的setting,
页面的左边,点击SSH keys:
点击Add SSH key,输入Title(随便填)然后粘帖刚刚拷贝的Key。然后点击绿色的按键Add Key。
输入你得Github密码即可完成添加。最后测试一下,输入指令:ssh -T git@github.com
你可能会看到警告,输入yes就行了。
完成部署
输入指令:hexo generate
hexo deploy
到这一步,当我试图打开echoVic.github.io时出现了问题:
原因是没有设置username和email,因为Github每次commit都会记录他们。输入以下指令设置:git config --global user.name "your name"
git config --global user.email "your_email@youremail.com"
好了,重新输入hexo g
hexo d
在浏览器输入http://echoVic.github.io, (你要输入你的名字) 你就可以看到你得个人静态博客啦。
Hexo常用指令hexo g #完整命令为hexo generate,用于生成静态文件
hexo s #完整命令为hexo server,用于启动服务器,主要用来本地预览
hexo d #完整命令为hexo deploy,用于将本地文件发布到github上
hexo n #完整命令为hexo new,用于新建一篇文章
Hexo配置
今天只说一些可以改动的部分,其他的目前我也不是很明白。打开D:\Hexo 下面的_config.yml 文件,可以修改博客名、作者等等。
修改完之后,执行 hexo g 和 hexo s,打开localhost:4000,看看本地效果。发布一篇文章
在Git Bash上执行命令:hexo new "my new post"
在D:\Hexo\source_posts 中打开my-new-post.md,打开方式记事本或者Notepad++(我用的是atom)。hexo中文章是用Markdown写的,如果没有接触过可以看下Markdown语法说明(中文版)。
写完文章之后,使用“hexo g”生成静态文件,“hexo s”本地预览效果,“hexo d”同步到github。总结
到此为止,终于算是搭建成功了Hexo,并发布了文章。我是用了将近两天的时间来搭建,一个早上的时间写了这篇文章,期间遇到了很多的问题,通过到网上去搜索和求助来寻找解决问题的办法,在这里感谢OsChina.NET中各位网友的回答,同时感谢 287306637(Hexo群)中各位小伙伴们的鼎立相助。
由于博主是个初学者,本文难免会有错误,欢迎大家指正。后续我会继续添加一些实用的功能,并把经验分享给大家,如果您也有一些问题和经验,或者觉得博主码字辛苦想要给予鼓励,欢迎在下面一起探讨。