网络上关于怎么使用hexo来配合github来写blog的文章已经特别多了,一搜一大把,所以小猪这里只是简单的介绍hexo和小猪觉得有问题的地方。
hexo的官方网址:https://hexo.io/zh-cn/
设置URL
可以将hexo站点的url设置成我们想要的格式,例如下面代码:
1 | # URL |
上述代码中,使用都年/月/日/标题/
格式都url,第二行使用的格式为id.html
的格式,这样小猪就能够将原来的blog地址迁移过来。
但是permalink_defaults
的值的设置就有点迷了,官网上的对该值的介绍为:
Default values of each segment in permalink
也就是每一个permalink的默认值。但具体怎么使用该值小猪还真没找到对应的资料。
写新博客
可以参考官方文档:https://hexo.io/docs/writing.html
使用下面代码新建文章1
$ hexo new [layout] <title>
这时候会在blog的_post文件夹下新建一个md文件。然后就在这个文件下面开始写你的blog吧。
这种体验我觉得并不会特别的好呀。
发布
使用代码hexo g
命令来生成文件,会新出现public文件夹,该文件夹就是我们需要的静态html文件,原则上只要将该文件夹放到web服务器上就可以访问来。
但是每次新建文章都需要重新使用该命令,所以小猪觉得这种方式也就是只能用在发布不是特别频繁的博客类网站了,如果需要经常变动站点内容的话还是建议使用结合数据库的方式来吧。
所以,hexo所做的事情就是将md文件根据我们对应的设置生成静态文件,当然过程中,我们可以使用网站主题文件,插件等。
之前小猪一直没接触这一块,经过几天的体验下来对此也大概的了解了。所以这github上面也新建了该站点,反正不需要什么费用。还能刷刷github的contributions呢。
每次发布都需要重新加入域名的问题
这里需要简单说明下的是如果我们使用了自己的域名,这时候就需要在配置文件里进行如下设置:1
2
3
4
5
6
7---
deploy:
type: git
repo: https://github.com/SmallerPig/smallerpig.github.io.git
branch: master
delete: false
---
或者在source文件夹下加入CNAME文件,文件内容直接为我们需要的域名
遇到的问题
hexo本身的问题就不说了,只是说说写blog的事情
第一就说上面已经说的,使用这种方式编辑md文件来新写blog,文章的标题,标签、分类、等都是按照指定都格式来写,这样都流程需要我们来适应,也就是需要用下面的格式:1
2
3
4
5
6
7title: 体验使用hexo写blog
id: 1126
categories:
- WEB开发
date: 2017-09-27 11:01:40
tags:
- blog
最麻烦的是如果像小猪这样使用id.html的格式这样的url的话来每次都得自己自增ID,这是有点麻烦。
第二个问题是如果换电脑写blog的话可能遇到不能正确同步的问题,搜索了一下也确实有同学遇到过这种问题。例如如下在知乎上的讨论
能够解决这个问题的解答大概也就是:
其实,Hexo生成的文件里面是有一个.gitignore的,所以它的本意应该也是想我们把这些文件放到GitHub上存放的。但是考虑到如果每个GitHub Pages都需要额外的一个仓库存放这些文件,就显得特别冗余了。这个时候就可以用分支的思路!一个分支用来存放Hexo生成的网站原始的文件,另一个分支用来存放生成的静态网页。
大概也就是如此啦。