avatar

目錄
Github Actions 自动部署 Hexo

GitHub Actions

GitHub Actions是GitHub於2019年底推出的自動化流程工具,它的功能很強大。而我們只需要用到它的構建。由於是GitHub自家的工具,我們無需再額外的註冊賬號,GitHub Actions也集成在了GitHub界面上,我們只需點擊Actions進行創建。

actions –> set up a workflow yourself

把以下代碼複製到代碼框去

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
name: 自動部署 Hexo

on:
push:
branches:
- master

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]

steps:
- name: 开始运行
uses: actions/checkout@v1

- name: 设置 Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}

- name: 配置 Git 环境
env:
ACTION_DEPLOY_KEY: ${{secrets.DEPLOY_KEY}}
run: |
mkdir -p ~/.ssh/
echo "$ACTION_DEPLOY_KEY" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
git config --global user.name "deserce"
git config --global user.email "deserce@163.com"

- name: 安装 Hexo CI
run: |
export TZ='Asia/Shanghai'
npm i -g hexo-cli
npm i

- name: 安装插件
run: |
npm install hexo-renderer-pug --save
npm install hexo-renderer-stylus --save
npm install hexo-deployer-git --save
npm install hexo-generator-search --save
npm install hexo-douban --save
npm install hexo-generator-feed --save
npm install hexo-abbrlink --save
npm install hexo-wordcount --save

- name: 部署博客
run: |
rm -rf .deploy_git
hexo g && hexo douban && hexo deploy
rm ~/.ssh/id_rsa

将姓名及邮箱改为你自己的

setting 里面设置secret变量。

image.png

ACTION_DEPLOY_KEY

我们需要用 ssh-keygen 命令生成一组私钥(没有后缀名)和公钥(.pub结尾)

Code
1
ssh-keygen -t rsa -C "deserce@163.com"

会生成 id_rsaid_rsa.pub 两个文件。
DEPLOY_KEYvalue改为id_rsa 中的值。

这一步比较重要,我们要将生成的 Public Key 添加到 deserce.github.io 仓库:将id_rsa.pub结果复制填进去就好了

image.png

運行

現在你只要把Hexo的目錄推送到GitHub去,GitHub Actions會自動監測到變化,然後進行編譯。

bat 命令

我们编写一个脚本文件,这个脚本非常简单,内容如下:

Code
1
2
3
4
git add .
git pull
git commit -m "update"
git push

将后缀改为.bat把文件放在hexo的根目录。

然后双击即可。

参考

https://jerryc.me/posts/74006f42/
https://eallion.com/github-actions-hexo-ci/
https://hdj.me/github-actions-hexo-cicd/
https://www.cnblogs.com/joker-game/p/12395878.html
https://www.antmoe.com/posts/6081157f/index.html
https://blog.csdn.net/qq_24267619/article/details/104500099

文章作者: deserce
文章鏈接: https://deserce.github.io/2020/03/05/hexo%E8%87%AA%E5%8A%A8%E9%83%A8%E7%BD%B2/
版權聲明: 本博客所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Tiny share !
打賞
  • 微信
    微信
  • 支付寶
    支付寶

評論