本文是《程序猿叨叨叨》系列文章中的其中一篇,想要了解更多相关的文章,欢迎猛戳蓝字前往阅读。
前几天使用hexo搭建了Github博客,今天在公司的电脑上想要同步Github博客到本地,遇到了点坑,查询了 一下网上的资料,现在记录一下,也算给遇到同样问题的小伙伴们一个参考。
同步思路与Github推拉源码思路相同,使用git指令,保持本地的博客文件与Github上的博客文件相同即可,其步骤如下:
// 在本地博客根目录下安装hexo
npm install hexo
// 初始化hexo
npm init
// 安装依赖
npm install
// 安装部署相关的配置
npm install hexo-deployer-git
详情参考这里
Github主分支
但是这个博客文件是不包含hexo配置的,所以我们需要新建分支,使用git指令将带hexo配置的Github工程文件上传到新建的分支上。
Github上新建分支
在本地博客根目录下使用git指令上传项目到Github:
// git初始化
git init
// 添加仓库地址
git remote add origin https://github.com/用户名/仓库名.git
// 新建分支并切换到新建的分支
git checkout -b 分支名
// 添加所有本地文件到git
git add .
// git提交
git commit -m ""
// 文件推送到hexo分支
git push origin hexo
// 克隆文件到本地
git clone -b 分支名 https://github.com/用户名/仓库名.git
source
->_posts
文件夹下新建md文件,并编辑好保存后:QQ截图20161013120208.png
// 安装hexo
npm install hexo
// 注意这里不需要hexo初始化:hexo init;否则之前的hexo配置参数会重置
// 安装依赖库
npm install
// 安装部署相关配置
npm install hexo-deployer-git
// 添加源文件
git add .
// git提交
git commit -m ""
// 先拉原来Github分支上的源文件到本地,进行合并
// 分支名后面的“--allow-unrelated-histories”是为了弹出“fatal: refusing to merge unrelated histories.”的错误
git pull origin 分支名 --allow-unrelated-histories
// 比较解决前后版本冲突后,push源文件到Github的分支
git push origin 分支名
至此多设备同步到此为止。
由于公司里的电脑是win 10所以在部署博客的过程中会遇到一些问题,整理如下:
npm install hexo-deployer-git --save
然后继续执行hexo deploye
指令进行部署。
repository: ssh://git@github.com/iNerdStack/inerdstack.github.io
继续执行hexo deploye
指令进行部署。
ssh -T git@github.com
yes
参考: