博客优化一
gitcalendar中提交次数不显示
原因:github中url传回来的数据count里面为空,且为object对象
解决:在gitcalendar.pug和gitcalendar-js.pug中修改count部分内容为intensity(String类型)即可
添加简易sh运行脚本
添加sh运行脚本(文件后缀名为.sh)
git-pull
// 拉取github中远程仓库的最新更改
git pull
git-push
// 添加到缓存
git add .
// 添加提交时的注释
git commit -m "deploy from hexo-admin"
// 提交到远程仓库
git push
hexo-publish
// 清空本地缓存后重新部署到博客页面
hexo clean
hexo generate
hexo depoly
在git bash中运行sh脚本
./hexo-publish.sh
修改post文章的front-matter
Blogroot\scaffolds\post.md中修改即可
添加文章封面:cover
添加文章页面顶部图片:top_img
修改过程中遇到的小bug
在解决上述问题的同时,遇到电脑突然重启,然后hexo d突然结束,下一次再hexo d时会报错:
cannot lock ref ‘HEAD’: unable to resolve reference ‘refs/heads/master’: reference broken
原因:在git进行push或者hexo d的时候改变了一些.deploy_git文件下的内容。
解决:
1、删除.deploy_git文件夹(物理性删除)
2、git bash中输入git config –global core.autocrlf false命令
3、hexo-publish.sh脚本运行
使用github action实现全自动部署
部署时报错
fatal: the remote end hung up unexpectedly
Everything up-to-date
FATAL Something’s wrong. Maybe you can find the solution here: https://hexo.io/docs/troubleshooting.html
Error: Spawn failed
at ChildProcess.
at ChildProcess.emit (node:events:527:28)
at ChildProcess.cp.emit (D:\Blog\node_modules\cross-spawn\lib\enoent.js:34:29)
at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
github action
Github Action是 GitHub于2018年10月推出的一个CI(持续集成Continuous Integration)\CD(持续交付Continuous Delivery、持续部署Continuous Deployment)服务。
每次部署Hexo都需要运行指令三件套,随着文章越来越多,编译的时间也越来越长,通过Github Action
,我们只需要在每次完成博客的编写或修改以后,将改动直接push
到远程仓库,之后的编译部署的工作统统交给CI
来完成即可,如果是看过Coding部署教程的小伙伴,应该对这种持续部署的操作有所感触。
# 在记事本中逐个记录,方便替换,以下为我的示例
[Blogroot]:D:\Blog
[SourceRepo]:YangZouy/Hexo
[SiteBlogRepo]
[GithubBlogRepo]:YangZouy.github.io
[SiteUsername]
[GithubUsername]:YangZouy
[SiteToken]
[GithubToken]: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
[GithubEmail]:3075879316@qq.com
这里补充一些常用的github命令
// 初始化git git init // 简历本地仓库与远程仓库的链接 git remote add origin ssh/http链接(远程仓库) // 要是提示origin已经存在,那么执行 git remote rm origin // 把项目推送到远程仓库 // .为全部的意思,把项目所有文件加到缓存区 git add . // 把缓存区里的文件提交到本地仓库 git commit -m "注释" // 将远程仓库与本地仓库同步 git pull --rebase orgin main // 把仓库中的文件推送到github仓库 git push -u origin main // 添加分支main git branch -M main // 创建分支 git branch 分支名 // 切换分支 git checkout 分支 // 查看所有分支 git branch -a // 分支合并 git merge 分支 (把分支合并到当前分支) // 删除本地分支 git branch -d 分支 // 重命名分支 git branch -m 旧分支 新分支
在部署时遇到的问题:
1、本地分支master与远程分支main的不同导致commit时不成功,本地分支改名成main后在./github/workflows/autodeploy.yml文件中依旧需要写成master:main
2、这里在私人仓库中需要添加GITHUBUSERNAME、GITHUBEMAIL、GITHUBTOKEN