hexo常见错误集合
hexo常见错误集合
一、部署报错Spawn failed
1.1 原因
-
在网上通过简单的查询之后发现问题出在
.deploy_git
文件夹中,这个文件夹是hexo框架渲染生成的所有文件的一个本地git仓库
,hexo d
命令就是将整个.deploy_git
文件夹的内容push到GitHub上的。 -
网上的一个解决方案是将GitHub上的
xxx.github.io
仓库克隆下来并改名成.deploy_git
来替换原来的,这种改名方式在Windows系统中是无法完成的。简单分析这种方法的原理无非就是将.deploy_git
的内容回滚到和GitHub上同步的状态。 -
结合刚刚的分析,不妨打开
.deploy_git\.git\logs
路径下的HEAD
查看一下仓库的状态历史(红线范围内的记录是我在第一次报错之后的多次无脑尝试,可以忽视)。再打开GitHub上的提交记录可以发现最近的时间点是
12:51:46
。 -
所以可以知道是那些多余本地提交导致了报错。
1.2 解决方案
-
现在的解决思路就是将本地仓库的状态进行回滚,对应的git命令如下。
1
git reset --hard commitId
--hard
强制将缓存区和工作目录都同步到你指定的commitId
所对应的提交。
-
执行之后
HEAD
多了下面的一条记录(圈出的那一串数字就是我自己仓库中12:51:46时间对应的commit的ID号)。 -
重新执行
hexo d -g
部署博客,发现问题成功解决。