Hexo+Github(0x04)-实现多端同步管理

1 搭建多端同步

原理

  • 在托管博客的github仓库建立两个分支:hexomaster(默认情况下就有的分支)
    • hexo用于存放博客的源文件,包括.md的博客文件、博客主题等文件
    • master用于存放public中生成的静态博客网页

hexo分支的搭建步骤

hexo博客更目录为:blog

  1. 删除blog/themes下各主题中的.git文件

    • 因为github不能嵌套托管
    • 后续跟换主题后或对现有主题更新建立了与远程仓库的联系后,在使用完成后,也要将.git文件删除
  2. 终端切换blog文件夹下,初始化仓库

    1
    git init  //初始化仓库  有git来托管blog项目
  3. 配置.gitignore文件

    • 将不需要托管的文件忽略
    • 其中public(生成的静态网页)由hexo_config.yml中配置了提交地址和分支,由hexo d命令提交到远程仓库
    1
    2
    3
    4
    5
    6
    7
    .DS_Store
    Thumbs.db
    db.json
    *.log
    node_modules/
    public/
    .deploy*/
  4. 将文件添加到暂存区

    1
    git add .
  5. 提交

    1
    git commit -m <"描述">
  6. 建立hexo(自定义)分支,用于托管博客原文件

    1
    git branch hexo
  7. 切换到hexo分支上,(以后本地工作区的操作都在这个分支上)

    1
    2
    3
    4
    5
    6
    git checkout hexo

    git log //查看是否切换到hexo分支上了
    ----切换成功------
    D:\blog>git log
    commit 93a57e6484d8f6980c4cc338d73be76777d8c863 (HEAD -> hexo, master)
  8. 添加远程仓库

    1
    2
    3
    4
    5
    6
    git remote add origin <hexo博客的github仓库地址>

    git remote //查看是否添加成功
    ----添加成功------
    D:\blog>git remote
    origin
  9. 在远程仓库新建hexo分支

    1
    git push origin hexo
  10. 将本地hexo分支与远程仓库origin/hexo分支建立对应关系

    1
    2
    3
    4
    5
    6
    7
    git branch -u origin/hexo

    git branch -vv //查看对应关系是否建立成功
    ----对应关系建立成功------
    D:\blog>git branch -vv
    * hexo 93a57e6 [origin/hexo] 初始化仓库
    master 93a57e6 初始化仓库
  11. 推送到远程仓库hexo支

    1
    2
    3
    git push

    //直接使用git push 而不是 git push origin/hexo 是因为前面建立了本地hexo与origin/hexo的对应关系,且当前终端在hexo分支下

master分支的搭建步骤

  1. 配置_config.yml
1
2
3
4
deploy:
type: git //指定博客部署的远程服务器
repo: https://github.com/ChuckieWill/ChuckieWill.github.io.git //远程仓库地址
branch: master //指定public中静态网页文件的托管分支
  1. 推送到远程仓库的master分支(终端在blog目录下)
1
hexo d

2 其他端搭建同步使用环境

搭建步骤

  1. 安装node环境、GitHexo

  2. 克隆hexo博客的源文件分支到本地

    1
    2
    3
    4
    git clone -b <branch> <url> <本地自定义仓库名>

    //案例
    git clone -b hexo <url> blog
    • <url>: github上的仓库地址
    • <本地自定义仓库名>: 将克隆下来的仓库重新自定义一个仓库名
    • <branch> : 指定克隆的分支名
    • -b : 用于指定可克隆指定分支
  3. 初始化配置(终端切换到blog文件夹下)

    • 安装依赖

      1
      npm install
    • 启动使用

      1
      2
      hexo g
      hexo s

3 日常使用步骤

  1. 每次使用前先从远程仓库拉起最新数据

    1
    2
    3
    4
    git pull 

    //使用前还可以检查一下 本地分支是否与远程分支建立了对应关系
    git branch -vv
  2. 执行hexo博客的相关操作,编辑文件,最后hexo d提交到远程仓库

    1
    2
    3
    4
    5
    6
    hexo n ""
    hexo g
    hexo d
    更换主题
    修改配置
    .....等操作
  3. 将编辑的源文件更新到hexo分支中

    1
    2
    3
    git add .  
    git commit -m ""
    git push //推送到远程仓库的hexo分支