因为节省时间(懒),所以从网上找了这个方法
1.新建github仓库
需要新建两个github仓库,我这里是:
- MyHugoSource: 存储源码
- shuai06.github.io:存放发布的静态网页资源
2.ssh秘钥
1
2
3
|
ssh-keygen -t rsa - -C "$(git config user.email)"
# 注意:这次不要直接回车,以免覆盖之前生成的。如果已经有秘钥文件,则需要换一个路径,避免覆盖,我这里为/users/xps/.ssh_action/id_rsa
|
- 生成的公钥(我这里是
~/.ssh_action/id_rsa.pub
)放到page仓库(shuai06.github.io)中:cat ~/.ssh_action/id_rsa.pub
之后复制,来到page仓库点击 Setting - Deploy keys - Add deploy key
,名称随意,粘贴进去刚生成的公钥,勾选 Allow write access
,保存。
- 生成的私钥(我这里是
~/.ssh_action/id_rsa
)放到page仓库(MyHugoSource)中:cat ~/.ssh_action/id_rsa
之后,来到源码仓库,点击setting->Actions secrets and variables-->actions-->new resposity secert
,变量名称这里设置为ACTIONS_DEPLOY_KEY
(这里和后面配置文件保持统一即可), 添加刚刚生成的私钥(id_rsa),
3.配置github action
注意yaml文件的格式规范
在源码根目录下新建 /.github/workflows/github-actions-demo.yml
,内容如下:
可能需要修改的地方为:deploy_key、external_repository、cname
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
name: Auto Deploy hugo
on: [push]
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-latest
steps:
- name: Check out repository code
uses: actions/checkout@v2
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: latest
extended: true
- name: Build
run: hugo
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} # 这里是上面设置的变量,一致即可
external_repository: shuai06/shuai06.github.io # page仓库的路径
publish_branch: main # 分支
publish_dir: ./public # 发布内容的目录
cname: geoer.cn # cname,设置为自己的
commit_message: ${{ github.event.head_commit.message }}
|
如果有 submodule,需要加上两三行:
1
2
3
4
5
6
|
- name: Check out repository code
uses: actions/checkout@v2
with:
submodules: recursive # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Setup Hugo
|
4.整体流程
yam文件需要push上去
这样,一般我写文章的步骤概述为:
在源码文件根目录操作的
1
2
3
4
5
6
7
|
hugo new posts/xxx.md # 新建文章
hugo -D # 构建
git add .
git commit -m "(update)提交xxxx"
git push -u origin main
|
过一会,访问page就可以了
个人测试成功部署,具体情况请根据实际问题具体分析
参考文章
https://blog.csdn.net/weixin_43031092/article/details/119900223
https://blog.csdn.net/weixin_41263449/article/details/107584336
https://shenhonglei.blog.csdn.net/article/details/124261204