Hexo部署问题的解决

问题描述

2月10日至2月19日,忙于模拟美赛做题,未更新博客。2月20日发现Hexo部署($ hexo d )时出现图1所示问题,以至于新添加的文章不能部署到服务器,网页端上将看不到新添加的文章。

图1:问题细节

问题分析及解决

分析一:网速

fatal: unable to access ‘https://github.com/zhangliao-legend/zhangliao-legend.github.io/‘:Failed to connect to github.com port 443:Timed out. 意思是,连接超时,可能是网速太慢造成的。

首先,我测试了能否连接到github.com,发现可以,结果如图2。

图2:连接github.com

然后,我分别测试了家里WiFi和手机热点,多次实验发现仍不能完成部署,排除网速原因。

分析二:误删关键文件

前几日,使用电脑清理软件深度清除痕迹,可能误删了本地部署用的关键文件,这样就需要再初始化一下Hexo。

  1. 删除hexo目录下的.deploy_git文件夹
  2. 运行git config –global core.autocrlf false
  3. 运行hexo clean
  4. 运行hexo g
  5. 运行hexo d

仍未解决。

分析三:代理

2月10日至2月19日,我在做美赛题,使用了VPN,可能对部署有影响。

于是,我将之前挂的代理都断开了连接,但问题仍未解决。

图3:断开连接

分析四:仓库名不符合要求

这期间未修改过仓库名,但在网上发现同样有人出现过这样的情况,比如,

昨天还可以,今天就报错了。

网上的解决方案有以下几种,都是修改了repo的值。

原本我的repo值为 https://github.com/zhangliao-legend/zhangliao-legend.github.io ,修改成git@github.com:zhangliao-legend/zhangliao-legend.github.io.git后,问题解决。

总结

晚上快休息时,碰到这个问题,于是无脑试了网上的很多方法,但因为思路较乱,遗漏了有效的方法,耽误不少时间。

这件事对我以后的行动具有指导意义:

  • 做事前,梳理思路,写下清单
  • 记录清单完成的结果

参考文献

  1. Error: Spawn failed at ChildProcess. #3449
    https://github.com/hexojs/hexo/issues/3449
  2. Error: Spawn failed at ChildProcess. #3043
    https://github.com/hexojs/hexo/issues/3043
  3. 有关使用 Hexo 和 GitHub 搭建博客,出现 hexo -d 报错如何解决?
    https://www.zhihu.com/question/38219432

   转载规则


《Hexo部署问题的解决》 帅张 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录