type
status
date
slug
summary
tags
category
icon
password
通过 Hexo 和 GitHub 搭建的博客,静态文件会上传到 GitHub 仓库的 master 分支,但是 Hexo 的安装目录还是保存在本地的。如果更换了电脑需要更新博客,我们需要 Hexo 的安装目录来生成/编辑/上传博客,并且这个安装目录需要随着博客的更新而更新。在这里提供一种便捷的办法来实现不同电脑之间同步更新博客。转载请说明出处。
实现思路
在 Github 用于存放博客的仓库 yourname.github.io 下面建立
master
和 hexo
两个分支master
分支(默认创建),通过 Hexo 命令提交,用于存放上传的 Hexo 静态文件(例如 public 文件夹里面的内容),这个分支用于显示 https://yourname.github.io 打开的内容。
hexo
分支(手动创建),通过 Git 命令提交/拉取,用于存放 Hexo 的安装目录,该分支可设为 默认分支 。
这样我们写博客的大概流程就是 在
hexo
分支上写上博客,并把写好的博客内容上传到 master
分支,两个分支都通过 git 进行管理,所有的修改一目了然,非常方便。实现过程
本地电脑
如果你的电脑还没配置好 Hexo,请参考以前的教程 Hexo+GitHub搭建个人博客教程
当你本地电脑的 Hexo 目录已经安装配置完毕之后,该目录可以 通过 Hexo 命令向 GitHub 仓库的
master
分支提交内容,但是该目录还不是 git 管理的目录,需要把该目录初始化为 git 管理的目录。1、删除非默认主题文件的 .git 目录(可跳过)
如果你使用的是非默认主题 landscape 的其他主题,而该主题的目录也是在通过
git clone
方式拉取下来的话,需要先取消该目录的 git 管理追踪,否则到时候提交 Hexo 安装目录的时候该文件夹会报类似于 XXX目录: git modified content untracked content
的错误。例如本人使用的是 next 主题,在 Hexo 安装目录下输入命令:2、把 Hexo 命令提交的分支改成 master
分支
编辑 Hexo 安装目录下的 _config.yaml 文件,在
deploy
参数里面添加 branch: master
,如下3、初始化 git 仓库
在 Hexo 安装目录下输入命令
初始化为 git 目录并创建
hexo
分支4、提交到远端服务器
在 Hexo 安装目录下输入命令
与远端主机关联并提交
hexo
分支另外一台电脑
当你在一台新电脑上需要写博客的时候,需要先把
hexo
分支拉取下来,再进行 Hexo 初始化。前提是该电脑需要先安装 git 和 node.js,并与 GitHub 进行 ssh 关联(可选)。如果这些工作还没完成请参考 Hexo+GitHub搭建个人博客教程1、拉取 hexo
分支
在任意目录里面输入命令
执行完之后你的目录下应该会出现一个
yourusername.github.io
的目录。2、初始化为 Hexo 目录
yourusername.github.io
目录只是一个普通的 git 管理目录,需要把该目录初始化为 Hexo 目录。3、安装插件(可跳过)
至此这台新电脑的初始化工作也已经完成,可以开始写博客了。
写博客步骤
以后我们写博客都在
hexo
分支下进行,master
分支只是用来存放生成的静态文件。确认目前在 hexo
分支下,步骤如下:git pull
每次写博客前拉取最新的hexo
分支代码
hexo new post '新文章'
开始写博客
hexo clean && hexo g
清空并生成新的静态文件和缓存文件
git add .
git commit -m '备注'
git push
提交到hexo
分支
hexo d
提交到master
分支
至此我们就可以实现在多台电脑上同步更新博客
参考资料
- Author:mcbilla
- URL:http://mcbilla.com/article/954ba1da-aedb-4d7c-8582-e777f5cece67
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!