0. 前言

在不同电脑之间共同维护博客

前提: 电脑上以安装并登录github

1. 正文

1.1 基础知识

hexo我们可以简单理解为将md格式的文件转换成html类的网页文件。当我们使用hexo d 时,只会把生成html类的网页推送到远程服务器。

如果我们想在不同电脑上都能维护博客,就需要把生成html类的代码也放远端(github),这样就能共同维护了。


hexo部分文件夹说明:

文件夹 说明
public hexo g生成的网页代码
thems 主题
_config.yml 全局配置文件
source md文件
package-lock.json 锁定包的版本
package.json hexo相关包的信息
scaffolds 文章模版

常用命令说明:

  • hexo clean: 清除public中的数据
  • hexo g: 将md格式文件转换成html类静态网页文件
  • hexo d: 推送到远端部署
  • hexo s: 本地预览
  • hexo n: 新建文件

推送文章三部曲:

1
2
3
hexo clean
hexo g
hexo d

1.2 实现

将hexo工具包推送到我们的私人仓库即可。不建议将文件推送到github pages 的不同分支

一来小白容易理不清,二来public中保存了我们的原始md文件,可能包含草稿(_drafts)文件。

1.2.1 初始化仓库

在我们的工作目录下git init 初始化仓库,

再将不需要推送的文件填写在.gitignore中,我们 git status 查看以下,将会推送如下代码:

image-20230808120404051

1.2.2 创建私人仓库

再github中创建私人仓库

1.2.3 推送到仓库

需要将thems中的各主题以子模块的形式重新加入,否则需要删除主题内.git文件,如next文件中的.git文件。如果我们不以子模块加入的话,那么thems主题里面的内容都会推送到github仓库,可以但是没有必要。

这里我们以子模块加入:

  1. 首先删除thems里面的主题,如果你的主题做过修改的话,那么就将主题推送到一个自己的仓库以后再删除。
  2. 清除索引git rm --cached themes/next
  3. 子模块加入:git submodule add https://github.com/next-theme/hexo-theme-next themes/next/

这样当我们推送我们的我们Hexo工具时,里面的主题是不会被推送上去了,省时省力。

推送:git push -u origin main

1.2.4 另一台电脑的使用

当我们换了一台电脑,只需要把这个工具包clone下来,并安装nodejs等相关代码即可。

当我们clone完以后,会发现thems里面有主题的名字的文件夹,但是里面没有内容。这个时候我们只需要把里面的下载下来即可。

A. 下载工具代码

法一: clone以后下载子模块

先clone下来

1
2
git clone  https://github.com/onceone/hexotools.git
cd hexotools

在拉取子模块

1
2
git submodule init
git submodule update

法二: clone时自动下载子模块

1
git clone --recursive https://github.com/onceone/hexotools.git

B. 安装必要库

在我们的工具代码中,会package.json中记录的相关库进行安装

1
npm install

C. 写

1
hexo n

D. 发布

1
2
3
hexo clean   # 清除缓存文件等
hexo g # 生成页面
hexo s # 启动预览

参考

[1] https://www.jianshu.com/p/0b1fccce74e0/

[2] https://blog.csdn.net/K1052176873/article/details/122879462

[3] https://zhuanlan.zhihu.com/p/60578464

[4] https://zhuanlan.zhihu.com/p/552639819

[5] https://zhuanlan.zhihu.com/p/305812430

[6] https://blog.csdn.net/weixin_45019350/article/details/121901433#t13

[7] https://blog.csdn.net/jj6666djdbbd/article/details/129321783

[8] https://blog.csdn.net/wtyuong/article/details/124892742