Hexo博客在多台终端同步管理

    近期使用Hexo搭建了自己的博客,但发现一个问题,就是如何使多台电脑保持博客同步,因为可能都会遇到换新电脑,或者在公司电脑上编写更新博客的情况;这两天参考了一些思路,实现了多台终端同步博客的功能,顺便也记录一下实现方案。
    首先看这篇文章的前提是你已经搭建了Hexo博客的环境,并且目前需要多台电脑都可编辑同步博客,那么先来看下实现的整体的思路。

  • 整体思路
    方案主要是通过维护两条git分支来实现,第一个分支是gihub上默认的master分支,用于存放发布的博文的静态页面;另外再新建一个分支,比如命名为hexo,通过此分支存放主题、原始的博客文件等等,这些文件才是不同电脑需要同步的文件;当每次修改主题或者新增博文后,先将修改的主题文件(在themes文件夹下)或者新增博客(在source文件夹下),同步到远程的hexo分支,然后在通过hexo g -d命令发布博文,也就是将新增的博文的静态页面同步到master分支。这样通过不同的分支管理不同的文件,实现了多台电脑同步更新博文的功能。
  • 一些概念
    Hexo文件夹下有以下文件和文件夹:

    其中.deploy_git、public两个文件夹下存放的是博客文章的静态页面,通过对比github上博客仓库的master分支可以看到master分支下面的文件结构和.deploy_git文件夹下的文件是一致的,这个应该可以判断通过hexo g -d发布到github的内容就是.deploy_git文件夹下面的文件。其余的文件夹和文件即是Hexo的主题文件、原始的博客文件等,刚在上文提到的hexo分支,存的即时这些文件。
  • 实现步骤
    • 创建分支(在github上操作)
      首先在Github上面创建一个分支命名为hexo,hexo是从master拉取,所以分支的文件和master一样。
    • 初始化分支(PC1上面操作)
      在已经部署好Hexo环境的PC1上的安装Hexo的根目录下拉取hexo分支,步骤如下:
      • git clone 仓库地址,将仓库文件拉取到本地,生成的文件名为 username.github.io
      • 进入username.github.io文件夹,除了.git文件夹以外,其他文件全部删除;
      • 命令 git add . 将修改提交至暂存区;
      • 命令 git commit -m “提交说明”,提交本次修改;
      • 命令 git push origin hexo 将本次修改推送到远端hexo;
      • 将刚才未删除的.git文件夹拷贝至Hexo根目录,删除username.github.io文件夹,此时本地的Hexo目录已与github上面的hexo文件夹关联了,而且默认的.gitignore已经配置了忽略规则,所以已经可以将根目录下的文件同步上去,还是依次调用add、commit、push三个命令将当前的文件推送至远程的hexo分支。
    • 同步分支(PC2上面操作)
      此时在PC2上,创建文件夹Blog,在Blog文件夹下面还行以下操作:
      • git clone 仓库地址;
      • 在clone下来的仓库文件夹中安装和配置hexo环境,依次调用命令:npm install hexo、npm install、npm install hexo-deployer-git;(不需要hexo init)
      • 此时通过命令git g、git s即可在本地开启同步下来的博客静态页面,并通过 http://localhost:4000/ 访问。
    • 发布博文(PC1或者PC2)
      后续不管是PC1还是PC2,如果修改了主题或者新增了博文,按照以下步骤即可:
      • git add . 暂存修改文件;
      • git commit -m “修改说明” 提交修改;
      • git push origin hexo 将新增博文原文件推送至hexo分支;
      • hexo g -d 将博文静态页面发布至maser分支。
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值