SEO优化教程

三种方法解决Github:Jekyll博客无法更新显示新Post

一、问题描述

_posts中添加新文章,push到Github,能够查看到commit记录,但是博客中始终无法更新显示文章。

如何解决?

首先,你需要确认Jekyll编译正常进行:

  1. 提交文章到Github;
  2. 进入与Github关联的邮箱,确认没有收到错误提示;
  3. 选择下面的解决方法修改之前提交的文章;
  4. 重复上面的步骤,直至解决问题。

二、解决方法

以下三种方法,分别对应了三种不同的错误,任选其一修改即可。

1. 使用规范的_posts文件名

很多人会犯一些粗浅的错误,例如命名不规范。Jekyll博客规范的文件命名方式通常有两种:

  • 年-月-日-标题.md
  • 年-月-日-标题.markdown

例如:

  • 2019-01-01-github-Jekyll-can-not-update.md
  • 2019-01-01-解决Github博客无法更新显示.markdown

注意:

  1. 必须使用-,不能使用_
  2. 月份、日期必须补全,不能使用19-1-1

两种命名方式其一即可,推荐使用英文单词作为文件名。

2. 设置timezone

如果你使用了当天的日期,可能无法及时得到页面更新。因为Github使用了格林尼治标准时间,也就是UTC。中国是东八时区,UTC+8,对于Jekyll来说是一个未来的时间,所以新的Posts不会被渲染。

解决办法有三个:

  • 修改文件名为前一天:例如今天是2019-01-01,可以设置文件名为2018-12-31.md
  • _config.yml中设置timezone: Asia/Shanghai
  • 在文章头部设置前一天时间:例如今天是2019-01-01,可以设置你自己写文章时刻的前一天date: 2018-12-31 12:27:40 +0800

三种修改时间的方式任选其一即可。

3. 将文本编码修改为UTF-8

针对Windows系统下的用户,文本编辑的编码通常默认是ANSI,只需要将编码修改为UTF-8,然后重新push就可以了。

编码问题通常会被人忽略,之所以有这篇文章,其实也是因为我在默认编码ANSI下没有检查到任何错误,同时在Google上也没有搜索到相关的修改建议,所以才整理出来。

如何修改文本编码:

  1. 打开编辑好的文章;
  2. 点击文件另存为-最下栏编码-选择UTF-8保存
  3. 重新push