0%

搭建hexo博客踩的无数坑🤦‍♂️

昨天折腾一晚上总算是把hexo的博客搭出来了,由于同之前的hugo差异很大,在这过程中踩了无数坑。

首先是next的版本,原先在next作者issnan的网站上下载的next是5.1.4版本的,结果运行的过程中控制台一直发提醒,才发现next官方的github上已经是7.0.0版本了,因此又重新下载了一次。

接着是本地调试,本地调试很顺利,几乎没有遇到什么坑。

为了修改自己的配置,打开_config.yml开始改参数。

顺着文档一条一条来,不懂的看别人博客、看注释。
  1. 先改网站的图标,这里有个bug很奇怪,我用自己的ico的时候网站加载不出来,用默认的png却可以,于是上网把ico转换成了png,接着就成功了。

  2. 然后是菜单,菜单这里next的5.1.4版本又有个bug,路径和emoji之间用||分开,但是||前若是加空格就无法识别路径,这个bug在7.0.0里面没有了。

    1
    home: / || home
  3. social一栏,本来想把邮箱放进去的,但是mailto语句又无法起作用,这个问题现在也没解决,只好注释掉了邮箱这一栏。

  4. github_banner这一个模块很有意思,会在页面右上角生成一个猫头,挺可爱的。

  5. 最后是动态背景,搞了很久都没成功,enable: true不起作用,最后谷歌才发现在7.0.0版本中各种动画效果都是需要先安装依赖才能使用的,顺着注释找到依赖以后很快就解决了问题。

全部搞好以后就准备push到github上面了,这个环节是我折腾的最久的部分。

首先我在github上创建了一个新的repo,命名为xxx.github.io,接着

1
2
3
4
5
6
7
git init
git add .
git commit -m "first commit"
git config --global user.name gitaccount
git config --global user.email gitaccount@example.com
git remote add origin master https://xxx
git push orgin master

结果遇到了一个问题 update were rejected because the tip of your current branch is behind ….

谷歌以后,原来是因为github上面有README.md而本地仓库没有,所以先pull下来,再push,解决问题。

终于push上去了,但是repo的settings页面又显示AUTHOR.md解析错误。随后谷歌无果,我把这个md删除了(不是特别重要),结果就成功了。

本来以为没事了,打开博客发现404。最后咨询了神仙学弟终于获得了解决方案。

原先一直想着自己push就没有想用hexo官方给出的办法

1
2
3
hexo clean
hexo g
hexo d

最后才发现这方法比push效率高多了。

原来自己对hexo生成博客的认识有一个很大的误区,以为把本地文件push到github就可以自动生成了。实际上本地的文件只是方便自己配置而设置的,实际上配置好以后还需要用generate生成静态网站,再把generate指令生成的文件push到github上才能出现页面。现在想想原来的文件夹里面连index.html都没有🤣。

这一次搭建博客,最深刻的感受就是自己对git的使用和静态网站生成的原理还不够熟悉,踩了无数坑,谷歌了无数次,但也收获良多。