Hexo多端同步-新环境克隆部署

在新环境(电脑)上克隆github中博客源码仓库到本地,再重新部署Hexo环境,可以直接在本地写博客或者配置,不需要hexo d,直接推送到源代码仓库让它自动部署。

以下内容参考自:Hexo在多台电脑上提交和更新-Kakaluotuo

一.Hexo同步原理

1. Hexo博客目录结构

文件夹 说明 是否需要上传github
node_modules hexo需要的模块,就是一些基础的npm安装模块,比如一些美化插件,在执行npm install的时候会重新生成 不需要
themes 主题文件 需要
public hexo g命令执行后生成的静态页面文件 不需要
packages.json 记录了hexo需要的包的信息,之后换电脑了npm根据这个信息来 安装hexo环境 需要
_config.yml 全局配置文件,这个不用多说了吧 需要
.gitignore hexo生成的默认的.gitignore模块 需要
scaffolds 文章的模板 需要
.deploy_git hexo g自动生成的 不需要

2. 同步原理

全局配置文件 _config.yml最后内容如下,是 hexo d的推送信息,执行执行 hexo d会把 hexo g生成的静态网页 public推送到博客仓库的main分支。

1
2
3
4
5
6
Bash
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: git
repo:https://{{$token}}@github.com/liyao231381/liyao231381.github.io.git,main

我采用了github actions自动部署,博客源码已经存放在另一个仓库的master分支,每次在本地操作后运行下列代码把修改内容push到源码仓库,在源码仓库会自动部署到博客静态网页的仓库 。username/username.github.io

1
2
3
4
Bash
git add .
git commit -m "update"
git push master master #前面的master应该是本地博客的代码,后面的master是博客源码仓库的默认分支

所以不需要在博客静态网页仓库另建分支存储源文件,可以直接在新环境(电脑)自选路径下将源码仓库克隆下来。

二.新电脑上操作

1. 准备安装Hexo的环境

内容参考自: 第一期:零基础快速搭建个人博客:Hexo + GitHub Pages + Cloudflare Pages 全流程指南,免费部署超详细教程! | Limin Studio

电脑安装Node.jsGit

点击下载Node.js

  Windows建议默认路径,Mac安装路径可更改,其他一律下一步Next,安装成功后在cmd输入node -v检查版本信息。

点击下载Git

 Windows默认路径,Mac按提示在终端操作。安装完成后Windows用户可以在开始菜单看到Git Bash等应用

点击下载VSCode

  可选,建议安装,好用

配置Git密钥并连接至Github

常用 Git 命令:

1
2
3
git config
git config --system --list
git config --global --list
    配置用户名和邮箱
1
2
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

    通过git config -l验证是否成功

    配置公钥连接Github

    生成SSH公钥

1
ssh-keygen -t rsa -C "你的邮箱"

    一路回车生成密钥,进入 C:\Users\用户名.ssh文件夹复制id_rsa.pub 公钥内容,配置到 Github 的 SSH 设置中。     路径:Github—头像—settings—SSH and GPG keys名字随便起,公钥填到Key。
    测试连接:

1
ssh -T [email protected]

    第一次连接会提示Are you sure you want to continue connecting (yes/no/[fingerprint])?,输入yes即可。

2. 克隆仓库

在要创建博客的路径右键打开Git Bash或者VScode,输入以下代码,将源代码仓库的内容下载到本地,下载的内容是以源代码仓库命名的文件夹,所以本地不需要创建博客文件夹。

1
git clone https://github.com/{&user_name}/{&repo_name}

注意:克隆后代码终端的定位还是在存放博客的文件夹,关掉终端后重新在博客文件夹右键打开终端,或者执行下列代码重新定位。

1
cd C:\**\**\{blog_name} #博客文件夹完整路径

3. 重新安装Hexo资源(.gitignore中忽略的内容)

逐个运行代码

1
2
3
4
npm install hexo
npm install
npm install hexo-deployer-git
# 不需要`hexo init`

最后执行hexo g;hexo s本地预览是否正常显示

4. 写博客或改动配置

运行git branch -v查看本地仓库所属分支
先把云端内容合并更新再操作本地

1
git pull master master #master分别是本地分支和云端分支

写博客或者改动配置后不用hexo d,直接push到源代码仓库

1
2
3
git add .
git commit -m "update"
git push master master #master分别是本地分支和云端分支

大功告成!!!

有问题就去问Chat GPT


这是我自己搭建的blog网站,用来记录和分享我自己研究的健身造型知识,类似于一个知识库。可以把这个网站分享给你身边的健身爱好者,转载或节选引,用务必注明为“李瑶的原创”,您的支持和尊重是我更新的动力!
理型健
```