Hexo搭建笔记
搭建hexo
下载并安装node.js
- 官网下载:https://nodejs.org/en/
- 验证:node -v
Node.js v20.13.1
命令行安装cnpm
- 命令:npm install -g cnpm –registry==https://registry.npm.taobao.org
- 验证:cnpm -v
命令行安装hexo
命令npm install -g hexo-cli
验证:hexo -v
hexo-cli: 4.3.2
- 建站
1 | hexo init <folder> |
新建完成后,指定文件夹的目录如下:
1 | . |
- 配置主题
主题的配置应放在
themes
文件夹下
上传前删除 themes/.gitkeep
在_config.yml
修改theme
为你的主题名称
Github + Hexo
新建一个仓库,名为
用户名.github.io
本地hexo仓库关联远程GitHub仓库
本地仓库一些必要的修改配置
可以自动化给文章分类
pre-commit
文件
1 | npm install hexo-deployer-git --save |
- 修改
_config.yml
配置
url: https://all-smile.github.io/blog
root: /blog/
…
deploy:
type: ‘git’
repo: git@github.com:all-smile/blog.git #这个是你的仓库的ssh
branch: gh-pages # 要部署的分支,本教程博客源码在master分支,部署在gh-pages分支
- 提交到远程仓库
创建
gh-pages
分支hexo结合GitHub创建个人网站指定的分支名,hexo 内默认设置的分支也是叫这个名字
1
2git checkout -b gh-pages
git push -u origin gh-pages远程仓库开启 github pages
指定部署分支:gh-pages
右上Setting –> Pages –> Branch –>选择gh-pages –>save
手动部署
命令:
1
2
3hexo clean
hexo g
hexo deployhexo模板引擎生成静态文件,并推送到
gh-pages
分支下(替换原先分支下的所有文件)需要注意的是:
hexo deploy
命令并不会帮助我们同步本地的修改到远程仓库,所以当在本地写完博文之后,要做两件事:一是发布站点,二是同步远程仓库,这样做比较麻烦,下面会讲解如何配置持续集成
自动部署–Github Actions
1. 设置 SSH 私钥 deploy_key
创建 SSH 部署密钥(使用git bash)
1 | ssh-keygen -t rsa -b 4096 -C "$(git config user.email)" -f gh-pages -N "" |
您将获得 2 个文件:
gh-pages.pub是公钥
Settings –> Deploy Keys –> Add deploy key
name写为
public key of ACTIONS_DEPLOY_KEY
Key为.pub中的内容
勾选
Allow write acess
gh-pages是私钥
Settings –> Secrets and variavles –> Actions –> New repository secret
name为
ACTIONS_DEPLOY_KEY
value为gh-pages中的内容
不要上传私钥!!!
2. 新建 .github/workflows/pages.yml 文件
文件内容如下:
1 | name: Pages |
3. 修改 _config.yml
文件中的Deploy
配置
1 | # Deployment |
上传blog时记得切换回master
分支