Hexo - 记录一次Pages服务部署失败的原因
问题与分析
某天忽然发现,一直运行得好好的Pages服务部署失败了,GitHub Pages报错如下:
Your site is having problems building: The tag cq on line 3 in source/high/index.md is not a recognized Liquid tag.
For more information, see https://help.github.com/articles/page-build-failed-unknown-tag-error/.
与此同时,Coding Pages同样也报错了:
Starting jekyll build.
> jekyll build --safe
Configuration file: /usr/src/app/_config.yml
jekyll 3.6.2 | Error: The next theme could not be found.
Jekyll build exit with code 1.
Fail to build jekyll site.
首先我使用的是Hexo的next主题,而根据GitHub Pages的报错信息来看,是说在source/high/index.md里使用到了一个不认识的cq标签。
这个标签是next主题自带的,使用该标签快一年了,还是第一次遇到报这个错。接着根据Coding Pages的报错来看,则是说/usr/src/app/_config.yml里找不到jekyll的主题。
这就很奇怪了,我使用的明明是hexo,怎么忽然就变成jekyll了?一阵瞎折腾过后,一直部署失败。我忽然想起来一个事情,我之前曾经拿本地的博客仓库的git配置练过手,难道和这个有关?
我开始查找本地博客仓库的git配置,我是使用hexo-deployer-git这个插件来将本地生成的静态博客发送到远程仓库的。
当我在本地在执行hexo g后,会在博客根目录下生成一个public文件夹,这个文件夹里的文件组合起来就是一个完整的静态博客。
接着如果执行hexo d,就会把这个public文件夹的东西完完整整拷贝到.deploy_git文件夹里,然后会把该文件夹里的所有文件全部推送push到远程库。之后会触发Pages服务的钩子去build项目,然后部署到网站上。
发现线索
我打开public文件夹,发现生成出来的文件很正常,接着打开.deploy_git文件夹,发现也很正常,接着查看远程库里的文件,终于发现了问题。
在远程库的分支里,根本就没有hexo相关的文件,至此算是找到原因了。
很显然,我在执行hexo d时出了问题,没能正常将文件push到远程库,于是部署就失败了。之前该命令是没问题的,可之前我曾经动过手脚,修改过博客项目里的git配置,手动修改了.git里的文件,莫非这就是问题的根源?
解决方法
基于以上的猜想,我直接删掉了本地博客项目的.deploy_git文件夹,重新执行命令:
hexo cl
hexo g -d
等待片刻后,我终于看到远程部署成功,我的个人站点再次运转成功!
皇天不负有心人啊!原因终于明了,是.deploy_git文件夹出现问题,删掉该文件夹,重新运行hexo d即可。
记录下这次的遭遇,遇到问题应该静下心来,仔细分析,才不容易瞎折腾~
Hexo - 记录一次Pages服务部署失败的原因的更多相关文章
- 记录一次sshd服务启动失败
记录一次sshd服务启动失败 问题描述: 服务器开机之后发现无法通过远程连接服务器终端,但是服务器并未宕机,于是考虑到sshd服务出现异常 解决思路: 查看服务器sshd服务运行情况 [root@ha ...
- Activiti系列:带有serviceTask的或者定时启动任务的流程部署失败的原因分析
在将两个带有serviceTask任务的流程部署到数据库的时候发现无法导入,最终分析出如下问题: 1)流程1是打算让定时启动事件可以每小时触发一次 由于原来是用 R/2015-11-01T01:00: ...
- Kubernetes 部署失败的 10 个最普遍原因
[原文].后面我们可能还会看到一个 OOMKilled 错误. 我们的应用正在挂掉?为什么? 首先我们查看应用日志.假定你发送应用日志到 stdout(事实上你也应该这么做),你可以使用 kubect ...
- CentOS 7下MySQL服务启动失败的解决思路
今天,启动MySQL服务器失败,如下所示: [root@spark01 ~]# /etc/init.d/mysqld start Starting mysqld (via systemctl): Jo ...
- phpnow 在win7下遇到“安装服务[apache_pn]失败”问题的一种解决办法
安装PHPnow时如果遇到下列问题: 安装服务[apache_pn]失败.可能原因如下: 1. 服务名已存在,请卸载或使用不同的服务名. 2. 非管理员权限,不能操作 Windows NT 服务. 将 ...
- 针对github权限导致hexo部署失败的解决方案
hexo deplay出错,没有反应 今天想在自己的另一个博客地址(链接地址)上更新一下博客,没想到hexo deplay没有反应,以下是解决过程:(更新于 2016-12-24 11:17:43) ...
- linux下syslog-ng日志集中管理服务部署记录
syslog是Linux系统默认的日志守护进程,默认的syslog配置文件是/etc/syslog.conf文件.syslog守护进程是可配置的,它允许人们为每一种类型的系统信息精确地指定一个存放地点 ...
- docker swarm overlay stack 服务部署记录
项目xxx(后端),xxx-ui前端(前后端分离的项目) 依赖mysql,elasticsearch.分别制作了四个镜像来做这件事.希望可以制作跨主机的部署,使用了swarm,以下是学习记录. 参考 ...
- Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...
随机推荐
- Android蓝牙通讯【转】
本文转载自:http://blog.csdn.net/vnanyesheshou/article/details/51554852 随着可穿戴设备的流行,研究蓝牙是必不可少的一门技术了. 总结了下蓝牙 ...
- __declspec(dllimport)的小秘密(转)
昨天和同事使用一个dll(lib+dll)的时候,发现他在引用头文件是,并没有使用__declspec(dllimport),但是程序完全运行正常,不明觉厉下,去网上翻了下资料,原来是链接器的原因,这 ...
- Java中的访问控制
修饰符 同一个类 同一个包 子类 整体 private Yes default Yes Yes protected Yes Yes Yes public Yes Yes Yes ...
- PS 滤镜— —水波效果
clc; clear all; close all; addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm'); I=imread ...
- 常用SASS封装
结合Compass库和工作总结,列出了项目中最为常用的SASS片段.内容收集于网络,我进行了简单整理并测试正常,可以根据实际项目情况进行取舍,值得学习或直接应用,感谢! //重置浏览器默认样式@imp ...
- 【C++基础】形参实参
c++规定:一个函数的默认实参既可以在定义中,也可在声明中指定,但在一个文件(准确的说,是一个作用域)中只能为一个形参指定默认实参一次
- 系列文章--突袭HTML5
学习新的网站构建技术:基于HTML5,但不限于HTML5. 突袭HTML5之Javascript API扩展5 - 其他扩展 突袭HTML5之Javascript API扩展4 - 拖拽 ...
- BZOJ3938:Robot
浅谈标记永久化:https://www.cnblogs.com/AKMer/p/10137227.html 题目传送门:https://www.lydsy.com/JudgeOnline/proble ...
- Oracle字符串截断
字段.SUBSTR(string,start_position,[length]) 求子字符串,返回字符串解释:string 元字符串, start_position 开始位置(从0开始), leng ...
- POCO库中文编程参考指南(11)如何使用Reactor框架?
1 Reactor 框架概述 POCO 中的 Reactor 框架是基于 Reactor 设计模式进行设计的.其中由 Handler 将某 Socket 产生的事件,发送到指定的对象的方法上,作为回调 ...