千家信息网

GitHub Actions博文发布工作流程是什么

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"GitHub Actions博文发布工作流程是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"GitHub Actions博文发布工作
千家信息网最后更新 2026年11月02日GitHub Actions博文发布工作流程是什么

本篇内容主要讲解"GitHub Actions博文发布工作流程是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"GitHub Actions博文发布工作流程是什么"吧!

版本库

首先,我们在Github上面创建一个仓库,用于存储博客的数据。静态博客推荐使用Hugo,非常简单。使用Markdown语法,官方提供了很多不错的主题模板。


这里我是用主干main 分支存储项目的代码, 单独创建一个分支存储编译后的静态HTML资源文件。我们切换到另外一个分支看下:


工作面板

新建一个工作板可以自定义状态,简单的将每次的博客优化需求记录在这里。这里的每一项任务都可以转换为issue,提交代码可以对应的issue关联。


CI/CD集成与发布

使用Github actions 作为构建。设置在main分支提交代码即构建。

name: github pages on:   push:     branches: [ main ]

签出主干分支代码,删除pages-git 分支(该分支存放静态文件,需要频繁更新)。

jobs:   deploy:     runs-on: ubuntu-18.04     steps:       - uses: actions/checkout@v2         with:           submodules: true  # Fetch Hugo themes (true OR recursive)           fetch-depth: 0    # Fetch all history for .GitInfo and .Lastmod        - name: Delete branch         uses: dawidd6/action-delete-branch@v3         with:           github_token: ${{ secrets.GIT_TOKEN }}           branches: "pages-git"

hugo --minify 生成静态文件public 目录。

- name: Setup Hugo        uses: peaceiris/actions-hugo@v2        with:          hugo-version: '0.74.2'          # extended: true       - name: Build        run: |          hugo --minify                    ls public          tar zcf ${version}-public.tar.gz public          ls

删除当前目录除public目录外的所有文件, 然后将public目录文件移动到当前目录。

- name: commit        run: |          rm -fr archetypes          rm -fr content          rm -fr demo          rm -fr static          rm -fr themes          rm -fr .DS_Store          rm -fr 1.1.0-public.tar.gz          rm -fr README.md          rm -fr config.toml          mv public/* ./          sleep 3          ls -l           rm -fr public           git config --global user.email xxx@qq.com          git config --global user.name cccc          git add .          git commit -m "update" -a

提交当前的工作目录到pages-git 分支。(到此pages-git分支已经存储了更新后的静态文件)

- name: Push changes   uses: ad-m/github-push-action@master   with:     github_token: ${{ secrets.GIT_TOKEN }}     branch: "pages-git"

github pages访问太慢了, 准备使用国内的gitee pages服务。在gitee创建一个仓库。最后一部分代码是将当前pages-git 分支代码镜像到gitee 项目的pages-git分支。

- name: 'get code '         uses: actions/checkout@v2         with:           submodules: true  # Fetch Hugo themes (true OR recursive)           fetch-depth: 0    # Fetch all history for .GitInfo and .Lastmod           ref: "pages-git"       - name: 'Mirror to gitee'         uses: pixta-dev/repository-mirroring-action@v1         with:           target_repo_url:             git@gitee.com:devopsgo/devopsgo.git           ssh_private_key:             ${{ secrets.GIT_PRIVATE_KEY }}

到此,代码已经同步到了Gitee Pages。接下来触发Gitee Pages 服务更新。(指定静态目录分支部署)


浏览器访问devopsgo.gitee.io 就可以访问了。到此发布完成了。


工作流已经创建好了, 最后每次发布博文的时候。使用vscode编写markdown文档,然后本地hugo serve 调试。完成后提交到主干分支,随后GitHub Actions 就会运行CI/CD,自动发布。




# - name: copy file via ssh password     #   uses: appleboy/scp-action@master     #   with:     #     host: ${{ secrets.SSH_HOST }}     #     username: ${{ secrets.SSH_USER }}     #     password: ${{ secrets.SSH_PASSWD }}     #     port: 22     #     source: "./${{env.version}}-public.tar.gz"     #     target: "/opt/"              # - name: executing remote ssh commands using password     #   uses: appleboy/ssh-action@master     #   with:     #     host: ${{ secrets.SSH_HOST }}     #     username: ${{ secrets.SSH_USER }}     #     password: ${{ secrets.SSH_PASSWD }}     #     port: 22         # script: |         #   rm -fr /var/www/newdevops/*         #   mv /opt/${{ env.version }}-public.tar.gz /var/www/newdevops/         #   cd /var/www/newdevops/ && tar zxf ${{ env.version }}-public.tar.gz         #   mv public/* ./  && rm -fr public          #   chown nginx:nginx /var/www/ -R         #   systemctl reload nginx

到此,相信大家对"GitHub Actions博文发布工作流程是什么"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

分支 工作 代码 目录 文件 静态 存储 工作流程 流程 主干 博客 更新 仓库 内容 项目 学习 服务 不错 实用 更深 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网和科技创新 涨乐互联网科技 互联网科技的 科技与互联网发展 北京互联网科技有限公司 互联网金融公司科技 华中科技大学互联网 中国互联网金融科技基金 央行互联网金融科技公司 全球顶尖互联网科技公司 福建科技产业互联网发展 苏州五指互联网络科技有限 想开互联网科技公司怎么样 山东大美朱楼互联网科技有限公司 吉林省码上互联网科技电话 陕西九四连强互联网科技有限公司 第三届互联网大会安防黑科技 科技互联网专业务虚会材料 山东亿川互联网科技有限责任公司 武汉亿视互联网科技有限公司 亿人帮互联网科技有限公司 互联网科技工作委员会毛军 互联网科技上市公司 苏州大垚互联网科技 齐家互联网科技有限公司 科技类的互联网平台 内蒙古九一互联网科技 全球科技与互联网公司市值变化 互联网科技新闻 六子台科技互联网展会
0