参考文章Hexo搭建博客的多终端同步问题
Github 操作
新建一个分支,并设定为默认分支
PS:hexo d
命令使用main
分支,且是否是默认分支无影响,只要保证push时不会影响到main
分支即可
初始电脑本地操作
本地任意一空白目录下 git clone 之前的代码
git clone git@github.com:yourname/yourname.github.io.git
clone成功后,删除掉除去.git
之外的所有文件夹
把之前的博客源文件复制过来,除去 .deploy_git
新建or修改 .gitignore
文件
.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/
如果你在themes
文件夹下 clone 过其它主题文件,把其中的 .git
文件夹删除掉
上传文件到hexo分支
git add .
git commit -m "backup blog source file0305"
git push
如果没有报错,此时github端应该就可以看到备份的源文件了。
另一台终端操作
首先进行一些基础配置,如安装git nodejs与 配置git连接Github等,详见博客部署配置
# 在该电脑的本地文件夹下clone Blog源文件
git clone <url>
# 或使用
git clone git@github.com:yourname/yourname.github.io.git
生成名为yourname.github.io
的文件夹
此后在此文件中git bash
安装之前安装的插件
npm install -g hexo-cli
npm install hexo-deployer-git --save
使用hexo -v
验证,使用npm audit fix
修复deployer
撰写新博客
然后就可以在新电脑上写博客了,将博客部署到网站后,记得push源文件,更新仓库
git add .
git commit -m ""
git push
其他终端同样编辑时,要pull回仓库中的文件,确保自己在最新的文件上进行修改
## 多台终端写blog ,记得先和github端 同步 ##
git pull
如出现修改冲突
- 放弃本地修改
git reset --hard git pull
- 使用
git stash
保存当前工作进度git stash git pull git stash pop
git stash pop
把刚才stash到本地栈中的代码pop到本地,但会删除本地stash中的内容
也可用git apply
恢复,但stash列表中的内容是继续保留的