HEXO博客实现多端同步

马上要去入职了,难免要碰到换电脑或者是在多台设备上写博文的场景。
就比如在家要用台式机,在出租屋要用笔记本,在公司要用公司的台式机,Hexo又是基于静态的pages,没有typecho那样可以在线写博文的后台系统,所以今天就把MacBook上的Hexo源文件做了多端同步。

本博文仅作记录。

源文件同步

在博客源文件目录生成git配置和与github远端关联。

1
2
3
4
5
git init
git remote add origin 仓库链接
git add .
git commit -m "设置同步"
git push --set-upstream origin master # 以后就可以直接git push了

这里我用了另一个仓库做博客源文件存放地,因为如果使用另一个分支来存放的话,难免有命令输错的时候,比如git push origin hexo不小心顺手打成git push或者git push origin master(这都是有可能的,毕竟这些都是熟手操作了),这样子就全盘覆灭。再者就是在github被微软收购之后,每个帐号下的仓库个数已经没有限制了(private仓库也一样),所以这样做更安全,更方便。

还有一点是Hexo在创建博客之初即为支持git仓库同步,最好的证据就是在博客根目录下有一个.gitignore文件用于非必须文件的忽略。

第三方主题同步

我用的主题是Melody,采用了Hexo的data files特性,只用在source/_data/melody.yml中对主题配置进行改动,而不用改动主题本身文件,所以支持主题平滑升级,具体可以直接到melody官方文档里看看。

因为修改主题配置无需改动文件,已经升级主题只需要在主题目录中git pull即可,这样索性就讲主题设置为git仓库的一个submodule即可。无需像其他的主题一样要fork一份主题文件到自己的账号下。

首先删除原来的melody主题文件(这里无需担心出问题,因为还会下回来),然后以submodule的形式将melody的文件下载到主题路径下即可。

1
2
rm -rf theme/melody
git submodule add https://github.com/Molunerfinn/hexo-theme-melody themes/melody

等待它下好即可重新使用博客。以下命令测试一下能不能用:

1
2
hexo clean; hexo g; hexo s
# 然后浏览器登录 http://127.0.0.1:4000 查看结果

在新的机器上配置博客环境

安装node.js

MacOS

1
brew install node  # 高版本node.js自带npm

Linux

1
2
sudo apt-get install nodejs
sudo apt-get install npm

Windows
前往Mode.js官网下载安装包安装。

可选操作:npm换源

1
npm config set registry https://registry.npm.taobao.org  # 更换淘宝源

搭建Hexo环境

1
npm install hexo-cli -g  # 安装hexo脚手架

克隆仓库和同步主题子模块

1
2
3
4
git clone 仓库链接 dir_name  # 克隆本仓库
cd dir_name
git submodule init
git submodule update

安装Hexo配置和主题所需依赖

1
2
# 在博客目录下运行
npm i # 安装依赖

每次写完博客同步到仓库

1
2
3
git add .
git commit -m "新增XXX文章"
git push origin master

这样即可完成博客在多个终端中的同步问题了。
当然,这篇博文就是在家里头的台式机上写好并部署、同步到github上的~
美汁汁

Author: SmallXeon
Link: https://hexo.chensmallx.top/2020/06/30/hexo-all-files-sync-by-github/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
一些推广链接
几个便宜量大的小✈场: FASTLINK, YToo, 论坛邀请注册: ,
便宜量大但是稳定性不足的VPS: Virmach, 价格略贵但好用的VPN: , ,