[hexo]如何搭建Hexo博客并部署到Github
如何搭建Hexo博客并部署到Github
一.前言
首先,关于使用hexo搭建博客并部署到github上面相关的文章一搜一大堆,但好多其实都是转载别人的,转来转去、非自己原创甚至直接就是拷贝别人的攻略,这样的文章排版不讲究,很多命令显示的乱七八糟,最终的结果就是如果你是第一次搭建的话,根本不知道文章的结构体系,更不要谈怎么去搭建了。
本人是初次搭建,总体来说还算顺利,两天的时间才建好。但本人在搭建的过程中经历了一些小坑,如果再让我搭建的话可能也就一两个小时就可以搞定,这里推荐几篇自己认为条理比较清晰且正确的文章,顺便说下自己在搭建过程中的坑,避免大家走弯路。
这也是本人第一次开启自己的博客之旅,未来的路很长,但是希望自己能越走越有激情!
二.推荐阅读的文章以及理由
这里主要推荐两篇文章,一篇是angelen10写的百度经验的文章,一篇是金石开的博客。推荐这两篇文章的主要原因是,两篇文章都有很条理和顺序,罗列了1234这样的顺序,然后在每个步骤的下面又会按照1234的顺序写这一大步骤的每一小步怎么操作,所以非常有助于实操。
其次,建议先阅读angelen10写的百度经验,然后再阅读金石开的博客,因为百度经验主要是搭建的过程,而金石开的博客还会写一些关于搭建成功之后如何配置,以及安装主题、插件,优化等等这些功能的说明。对于初次搭建的人而言,最重要的是搭建成功,至于后面的配置是后话了,慢慢研究也好,毕竟搭建成功了才有动力继续看后面的内容,否则后面的内容就是一些干扰信息了。我写这篇博客的时候,用的就是Hexo默认的landscape主题还没有安装其他主题,也没有安装任何插件。先睹为快,下面是两篇文章的链接:
三.官方文档
任何的工具的使用,最权威的说明就是产品说明书,所以如果上面的两篇文章大概浏览完理解了整体思路之后,建议也阅读下hexo的官方文档。
打开官网首页后,分为三个部分,上面一行是导航;其次是banner,有“A fast, simple & powerful blog framework”这样的大字;最后下面是一些特点还有一些常见命令的罗列。简单浏览下首页即可,浏览完之后直接点击左上角导航栏的Docs进入文档阅读进程。因为首页中的baner和下面的get started 按钮链接的也都是Docs的地址。
进入Docs之后,分为三列,左侧是整体Docs的目录,中间是对应每一小节的文章,右侧是该小结的详细目录,条理思路很清晰。
初次建站,建议阅读Get Started下面的overview / setup / commands,还有Basic Usage下面的generating / deployment。其中deployment下面也只建议阅读git部分的内容,其他的heroku等等的也都没什么用途,除非你不是部署在github上面。
其他的不建议阅读,都是后续搭建成功之后再详细研究的。
好了,以上基本就是搭建之前的准备工作,让你对整个搭建过程,有个总体的印象,知道到了哪步之后具体如何去操作或者去哪里找相关的说明去详细了解。
还有一点小小提醒,就是步骤可以参照百度经验的进行,但是具体的命令还是建议以官方文档为准,比如,百度经验中第一步安装hexo的命令是npm install -g hexo
,而官方文档中overview部分的安装命令是npm install -g hexo-cli
,我是按照后者安装的,也没有出现任何问题,所以建议大家也按照后者进行安装。其他一些命令也会出现类似的冲突,建议都以官方文档为准。一是因为版本不同会有命令不同的情况,二是官方文档是最权威的说明,优先级当然要高于任何其他人的经验。
最后,给大家看下我的环境配置供大家参考
hexo: 3.2.0
hexo-cli: 1.0.1
os: Darwin 14.0.0 darwin x64
http_parser: 2.5.0
node: 4.2.6
v8: 4.5.103.35
uv: 1.8.0
zlib: 1.2.8
ares: 1.10.1-DEV
icu: 56.1
modules: 46
openssl: 1.0.2e
四.自己在搭建过程中遇到的坑
对于初次搭建hexo博客的人而言,搭建过程是一个战战兢兢的过程,生怕哪里漏掉了一些内容导致自己的机器崩溃或者搭建失败。所以大家阅读完上面的文章后,可以先看下过来人的坑,才能更容易的避免入坑。我在搭建的过程中,遇到的最让我浪费时间的只有一个坑,其他的都还好。所以这里会重点说这个坑,其他的作为小小的提醒,放在下面供大家参考。
按照百度经验的顺序,我将可能遇到的坑依次展示给大家。
- 安装hexo =》创建Hexo文件夹=》安装依赖包=》本地查看,以上这些过程我都没有遇到任何问题。
- 注册Github账号=》创建Repository,这两步我也没有遇到任何问题。但是这里要提醒一下,创建Repository的时候我没有写description也没有创建readme.md文档,创建了一个完全空白的repository。建议大家也都创建空白repo,这样的话肯定没有问题,我没有尝试非空白repo能否部署成功,所以如果你想尝试非空白repo的话也可以,但是不论成功与否,大家都可以在下面留言,告诉我,以便于我告诉后来人。不过这篇文章编写的时候我还没有配置留言功能,我会尽快上线留言功能的。
- 修改配置文件。我主要浪费的时间就在这个环节上面,而且错误还非常的简单。这个环节的配置中,deploy 下面建议按照官方文档的要求,使用 type: git,而非经验中的type: github。repository建议也用https的链接。有其他博客说ssh的链接也可以,不过我没有这样配置,这样配置是否可以,大家如果有人尝试了,也可以在下面留言告诉我。branch: master这个配置也没有问题。现在最大的问题来了,耽误了我将近一天的时间!就是配置的键值对方式中冒号后面必须有一个空格,否则配置不识别!举例来说,就是type:git,这样的书写是错误的,而应该写成type: git。看到区别了吗?冒号后面需要加入空格,就这个区别。但是这个区别因为经验里博主没有说,所以我花费了大半天的时间在调试各种其他内容,浪费了很多时间。当我知道我是在这一步出错的时候,我的内心是崩溃的。
顺便再说一句,就是这样的小错误,往往是程序出现重大问题的根源,看似小,但是却是问题的根源。一方面,让人无奈,但另一方面这也是程序给我最大的乐趣,就是这种直接反馈和逻辑明确的机器道理的感觉,你反馈给它1,它就一定回复你1,你反馈0,他就一定是0,不会有别的情况。你一个标点符号甚至是大小写的错误,都可能导致程序的出错,这也是程序的美感。 - 好,上面的错误如果你可以避免,下面的步骤应该也基本不成问题,设置SSHkey=》完成部署,这两步我也都没有出现任何问题,而且很多朋友在注册github的时候应该就已经完成了sshkey的设置这一步,所以基本没有太大问题。
以上就是所有的注意事项。
五.其他
最后,希望大家都可以顺利搭建hexo博客并且部署到github上面,毕竟这是开启你和这个世界对话的一扇窗户。我相信这才是编程和计算机最有魅力的地方:你和这个世界的交流!
我会不断地更新这篇博客,我会把我自己找到的认为不错的博客链接放到下面,供大家参考,希望能对大家有帮助!
- 极客学院对hexo官网的翻译 其实就是hexo官网的完全翻译版