Hexo博客多端同步问题

28次阅读

共计 1505 个字符,预计需要花费 4 分钟才能阅读完成。

Hexo 博客多端同步问题

搭完博客,发现只有公司电脑上有源文件,如果回家就没发继续更新博客了。也不能拿着 U 盘到处拷贝。所以就把博客源文件放到 github 上解决同步问题。

博客源文件同步

在博客根目录执行

  git init
  git remote add origin git@github.com:lanpangzhi/lanpangzhi.github.io.git  # 添加远程仓库 注意这里要添加你自己的仓库 lanpangzhi 换成你自己的用户名
  git checkout -b hexo            # 新建 hexo 分支并切换到 hexo 分支
  git add .              # 所有变化提交到暂存区
  git commit -m "解决同步问题"  # 提交文件
  git push origin hexo   # 推送 hexo 分支

这就成功了,github 上已经有博客的源文件了。

推荐把 hexo 设置为默认分支。

git submodule 实现第三方主题同步

因为之前是直接把第三方主题克隆到博客目录,有什么改动是无法推送到作者 Git 仓库的,这个时候需要把第三方主题的项目 Fork 到自己仓库,自己账号下生成一个同名的仓库,并对应一个 url,我们应该 git clone 自己账号下仓库的 url。

执行如下操作。

    git submodule add git@github.com:lanpangzhi/hexo-theme-next.git themes/next 

把自己仓库下面第三方主题添加到 Git 子模块, 注 : themes/next 这里的目录是因为我用的 next 主题才会写 themes/next 如果你用的不是 next 请把 next 替换成你的第三方主题文件夹名字。

博客的根目录会多一个.gitmodules 文件, 这是一个配置文件,保存了项目 URL 和你拉取到的本地子目录。

这就添加成功了,然后执行如下操作。

  git add .              # 所有变化提交到暂存区
  git commit -m "添加第三方主题 Git 子模块"  # 提交文件
  git push origin hexo   # 推送 hexo 分支 

更换电脑同步博客和第三方主题

同步博客

电脑上一定要先 node 和 git,执行如下操作。

    npm install hexo-cli -g  # 先安装 hexo 的脚手架
    git clone git@github.com:lanpangzhi/lanpangzhi.github.io.git  # 下载项目,因为 hexo 是默认分支,所以这里直接会下载 hexo 分支
    npm i # 安装依赖
    hexo s # 启动服务器 

剩下的就自行操作了。博客已经完成了同步。

注:每次写完文章部署网站后,记得再执行如下操作。

  git add .             # 所有变化提交到暂存区
  git commit -m "新增 xxx 文章"      # 提交文件
  git push origin hexo           # 推送 hexo 分支 

同步第三方主题

在博客根目录执行如下操作。

  git submodule init    # 初始化本地配置文件
  git submodule update    # 拉取子模块 

如果第三方主题有修改的,修改完成后在第三方主题目录执行。

  git add .             # 所有变化提交到暂存区
  git commit -m "修改主题 xxxx"      # 提交文件
  git push origin master       # 推送 master 分支 

这样就会把修改的主题推送到自己的仓库。

这样就实现多端同步了。

我的博客和 github 地址

http://blog.langpz.com

https://github.com/lanpangzhi

参考

http://devtian.me/2015/03/17/blog-sync-solution
https://git-scm.com/book/zh/v1/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97

正文完
 0