关于hexo更新到GitHub后博客内容未变问题

网站修改和更新文章后,在本地用 hexo s 部署到了GitHub后却发现自己的博客网站内容没有变化。找了一中午终于找到了原因所在。

最开始更新完毕确认检查后,使用 hexo d 已经部署到了github,自己在github上也看到确实已经更新到了仓库,但是博客内容却一直没变。百度了下说是会有一段时间的延迟。但是等了一个晚上发现内容还是没有更新。于是又看了下GitHub的仓库,在右侧边栏发现了这个东西:
Environments/githubpages
都知道github-pages是GitHub自带生成静态页面的功能,点进去后发现有一个更新日志,看了下最近的更新日期还是最开始部署到GitHub作测试的时候。于是知道博客内容没变是因为根本还没有更新。

然后查到了可能是分支问题,按照视频做的时候,根目录的 _config.yml 文件中deploy这一行是这样的:

deploy:
  type: 'git'
  repo: [email protected]:W-alker/W-alker.github.io.git
  branch: master

这样做,意思是将hexo部署到了master分支,导致我的仓库里多出了一个master分支。这才想起前段时间GitHub已经将仓库的默认主分支改为了main,所以我的仓库里有两个分支,一个main一个master,而main才是”active“分支,尽管我之前已经将默认分支改为了master分支,但是博客页面所在的分支还是main分支。两个分支的内容截然不同,修改之后的hexo文件更新在了master分支,而main分支保留的仍然是最开始未修改的文件。

也就是说,pages服务使用的是我的main分支生成的页面,而我需要生成页面的代码是在master分支里的。

于是一不做二不休,直接删除了这个仓库然后新建了同名的仓库,并且将配置文件里的branch改成了main,然后 hexo clean hexo g hexo d 重新部署,之后博客果然更新了。

后来觉得部署在GitHub上太慢,又百度着把博客部署在了gitee,但是又出现了很多问题,因为gitee的默认分支名还是maser,所以和pages服务冲突的问题又出现了好几次。最后干脆把GitHub的默认分支名改成了master,解决问题。

总结:注意仓库分支。仓库最好是单分支,如果需要改到其他分支,记得将pages服务改到那个分支下。当然,你也可以直接将github的默认分支名重新改为master,这样能避免你同时部署到其他代码托管平台如gitee和coding时候又出现问题。

猜你喜欢

转载自blog.csdn.net/Lu_xiuyuan/article/details/112056997
今日推荐