今天忽然想起博客在 github 上存放的只是 public 中的文件,其他的建站源代码只保存在本地,这样的话如果本地电脑系统坏掉了或者发生了意外电脑不见了,那么没有了建站源码,我的网站不就 gg 了嘛!,所以上网搜了下备份网站源码的教程,下文是记录。
首先在 github 博客所在仓库 (即
yourname.github.io) 中新建分支Hexo(名字任意),并且将其设为默认分支, 在网站中进行设置即可;将博客仓库
clone至本地,将之前本地博客根文件夹下的_config.yml,themes/,source/,scffolds/,package.json,.gitignore复制到 clone 的文件夹yourname.github.io/下;将
themes/next/(next 为使用的主题) 中的**.git/**删除,否则无法将主题文件夹 push;在
yourname.github.io/下执行$npm install $npm install hexo-deployer-git $npm install hexo-server --save // 为使用本地测试 hexo s 作准备接下来就可以将网站源码备份了
$git add * $git commit -m "your message" $git push origin Hexo // 这里的 Hexo 是你新建的仓库分支名称执行
hexo g -d生成静态页面并部署至 github 仓库中。
写一下书写 hexo 博客的依赖
git
nodejs
npm
github 博客仓库 clone 至本地
在 clone 文件夹下执行
$npm install hexo-cli -g $npm install $npm install hexo-deployer-git
这种方法对于我的设置出问题了
之前我是将自己的主页设置成了自己的页面,也就是自己的域名打开后是自己写的界面,在自己的页面点击 博客图标才是进入自己的博客
域名/blog,这个界面就是使用hexo + next的界面,但是打开后是 404.
然后使用了这种方法就出了问题,hexo g自动生成的文件在public/blog,这个不需改变
这个问题先放在这里。
21.8.1
上面的这种方法已经过时了,现在我的博客是使用 github action 来进行部署 的,博客源文件放在一个仓库里,博客生成的 html 文件放在另一个公开仓库里。也起到了备份网站源码的作用。