Hexo 多台电脑同步方法
前言
由于没有服务器,只能在本地电脑上搭建 Hexo 博客,而搭建一个个性化的博客还是挺费时的,如果换电脑了博客就得重新搭建,重新配置。那怎么才能在多台电脑间灵活切换,不用重复搭建呢?
原理
本文将用 Git 分支来实现
Hexo 源文件放在 master 分支;
Hexo 生成的静态资源文件则放在新分支 my-blog 上。
换电脑时直接 git clone 克隆一份,以后多台电脑维护只需要在修改前 pull,修改后 push 即可实现同步。
Hexo 博客目录解析
├── .deploy 执行hexo deploy命令部署到GitHub上的内容目录
├── public 执行hexo generate命令,输出的静态网页内容目录
├── scaffolds layout模板文件目录,其中的md文件可以添加编辑
├── scripts 扩展脚本目录,这里可以自定义一些javascript脚本
├── source 文章源码目录
├──── _drafts 草稿文章
├──── _posts 发布文章
├── themes 主题文件目录
├── _config.yml 全局配置文件,大多数的设置都在这里
└── package.json 应用程序数据,指明hexo的版本等信息,类似于一般软件中的关于按钮
必须备份文件
├──_config.yml #全局配置文件
├── theme #主题文件
├── scaffolds #文章模板
├── package.json #说明使用哪些包
├── .gitignore #限定在提交的时候哪些文件可以忽略
└── source #文章源码目录
操作步骤
前提
- Node.js (Node.js 版本需不低于 8.10,建议使用 Node.js 10.0 及以上版本)
- Git
旧电脑上的操作
(1)新建分支 my-blog ,并修改站点配置文件的 branch 修改为 my-blog,如下:
deploy:
type: git
repo: git@gitee.com:march21sunny/march21sunny.git
branch: my-blog
(2)在站点根目录下找到 .gitignore,该文件中的内容为提交 git 时忽略的文件、目录,确认该文件中没有上文中的必须备份文件。
如果themes文件下的主题文件中有 .git,删除。
右键空白处选择 Git Bash Here,依次执行以下命令:
git init #初始化仓库
git add . #全部文件添加到仓库
git commit -m "xxx" #文件提交到仓库,xxx为提交说明
git remote add origin xxx #关联远程库,xxx为你的Git仓库地址
git push -u origin master #提交到远程库
至此,查看 git 主页,你的源码应该已经提交到你仓库的 master 分支上了。
新电脑上的操作
(1)新建一个目录,克隆 Git 仓库源码或复制源文件到该目录
git clone xxx # xxx为你的仓库地址
(2)安装hexo
npm install hexo-cli -g
如果出错执行
npm install -g hexo
(3)安装服务
npm install hexo --save
(4)安装模块
npm install
(5)最后生成文件预览
hexo clean && hexo g && hexo s
这时候你应该就可以在新电脑上看到和旧电脑上完全一样的博客了。
维护
以后每次要写博文或者修改文件时,先拉取最新博客源码
git pull origin master
再进行修改,修改后要做两件事:
(1)部署博客到 my-blog 分支:
hexo d
(2)上传最新博客源码到 master 分支:
git push origin master
这样就可以实现多台电脑间博客无缝切换啦。
Git支持多种协议,包括https,但ssh协议速度最快。推荐使用SSH。