记录一次报错及解决。
利用hexo s
开启本地预览,打开http://localhost:4000
查看网页预览的时候,macOS可能跳出一个框问你是不是要保存什么乱七八糟的(记不清了)。当时随手选了“是”,结果调试好网站后,用hexo d
部署到GitHub的时候出错了:
1 | FATAL { |
按照报错,.deploy_git
下面的这个文件夹应该是空的。打开.deploy_git
一看,发现里面有完整的博客数据,文件名为iCloud index之类的(记不清了)。
解决办法
删除整个.deploy_git
文件夹,再hexo g
,hexo d
,就成功了。
原因分析
经过Google相关报错,发现有网友遇到过类似问题。
因为在本地在执行hexo g后,会在博客根目录下生成一个public文件夹,这个文件夹里的文件组合起来就是一个完整的静态博客。执行本地预览hexo s之后,因为选了macOS提供的选项,这个文件夹中的数据应该被备份到了iCloud中,并将某种index储存至.deploy_git文件夹中。
正常情况下,如果执行hexo d,就会把这个public文件夹的东西完完整整地拷贝到.deploy_git文件夹里,并把该文件夹里的所有文件全部推送push到远程库。但现在由于iCloud的某种操作,该文件夹存了index,所以执行hexo d,拷贝之前检查文件夹会报错说文件夹不是空的。
所以此时删掉.deploy_git文件夹即可成功执行hexo d。