Hexo博客在Github实现同步管理

Hexo 博客在 Github 实现同步管理

一.Hexo 部署到 Github 的过程

我们通过 hexo init 命令会生成 Hexo 博客的源文件,Hexo 通过 hexo g 命令将 hexo new 命令生成的 xxx.md 文件生成对应的 html 文件(自动创建 public 的文件夹,所有的静态文件都存放在该文件夹下面)。然后 hexo d 命令会根据 _config.yml 文件里面的 git 仓库配置,创建 .deploy_git 文件夹(里面的内容也就是 public 文件夹下的静态文件)将该文件下的内容推送到 git 仓库中,在 Github 上显示的内容也就是该文件夹下的静态文件。

二.实现思路

利用 Github 的分支管理可以完成同步操作,在 Github 上创建两个分支,一个分支存放我们要部署的静态文件(也就是我们可以展示的内容),另一个分支存放 Hexo 生成的源文件。Hexo 源文件通过 git 来管理,而我们要展示的部分通过 Hexo 来管理。

三.实现过程

在 Github 上新建一个 hexo 分支,将该分支设为默认分支(目的是通过 git 管理 hexo 的源文件),然后在本地任意目录下进行 git clone 操作(也就是克隆 Hexo 的源文件),把除了.git 文件夹外的所有文件都删掉把之前我们写的博客源文件全部复制过来(除了 .deploy_git )复制过来的源文件中有一个 .gitignore,用来忽略一些不需要的文件。如果没有的话,自己新建一个内容如下:

.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/

注意: 如果你之前在 theme 文件夹中克隆过主题文件,那么应该把主题文件中的 .git 文件夹删掉。因为 git 不能嵌套上传,最好是显示隐藏文件,检查一下有没有,否则上传的时候会出错,导致你的主题文件无法上传。

然后就可以通过 git 命令将 Hexo 的源文件上传到 Github 中了。其中node_modulespublicdb.json已经被忽略掉了,在其他电脑上只需要安装相应的环境后,在任意文件夹下将 Hexo 的源文件进行克隆(不要 hexo init,因为这个命令就是生成我们传到 Github 上面的 Hexo 博客的源文件 ),然后执行如下命令即可:

//安装
npm install
npm install hexo-deployer-git --save 

//编译,部署
hexo g
hexo d

四.说明

  • 工作完成之后记得通过 git 命令,把源文件上传到 git 仓库中。

  • 如果在已经编辑过的电脑上,只需要和远端的仓库同步一下即可(git pull)。


 上一篇
Go语言ORM之XORM Go语言ORM之XORM
Go-xorm 快速入门一.xorm是什么xorm是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便。 二.特性 支持Struct和数据库表之间的灵活映射,并支持自动同步 事务支持 同时支持原始SQL语句和ORM操作的混合
2019-10-28
下一篇 
Linux文件目录管理 Linux文件目录管理
Linux文件目录管理一.关于Linux文件目录系统的说明。 Linux 将文件系统挂载到特定的目录下,根文件系统 “/“ 是最初建立的文件系统。 Linux 的每个系统目录都有其特定的功能。 二.文件目录管理常用命令。 建立文件和目
2019-10-01
  目录