.NET Github Actions 入门
Github Actions 是 Github 提供的一种持续集成(CI)和持续部署(CD)工具,可以自动化代码开发、测试、构建和部署的过程。它可以在代码仓库中通过配置文件来定义工作流程(Workflow),包括触发事件、执行任务和处理结果等。这些工作流程可以与Github仓库的其他功能(如Issues、Pull Requests等)集成,也可以使用第三方工具进行扩展。
使用 Github Actions 可以极大地简化和自动化软件开发和发布流程,同时提高生产力和代码质量。因为它可以自动化许多常见的任务,例如测试代码、构建代码、打包应用程序、发布到生产环境等等。同时,Github Actions 也可以与其他工具集成,例如 Docker、AWS 等等,使得开发者可以更加方便地使用这些工具来完成自己的工作。
前言 By ChatGPT
1.入门知识
使用 Github Action 需要在仓库的根目录创建 .github/workflows
文件夹,在里面使用 yaml 定义 Github Action 工作流。
如图所示:
Github Actions 官方文档:https://docs.github.com/en/actions
2.运行流程
Github Actions 的工作流程大概可以分为 3 步:签出代码、 安装运行环境、执行各种操作。
3.Hello World
在 workflows
目录下创建名为 dotnet.yml
的文件:
name: .NET
# 定义触发条件
on:
# 触发动作 push
push:
# 触发分支 main
branches: [ "main" ]
# 触发动作 pr
pull_request:
# 触发分支 main
branches: [ "main" ]
# 定义 Job
jobs:
# Job 名:build
build:
# 运行 Job 的 OS 环境
runs-on: ubuntu-latest
# 执行 Job 对应的步骤
steps:
# 签出代码
- uses: actions/checkout@v3
- name: Setup .NET
# 安装 dotnet 7.0.x
uses: actions/setup-dotnet@v3
with:
dotnet-version: 7.0.x
# 还原包
- name: Restore dependencies
run: dotnet restore
# 执行 Build
- name: Build
run: dotnet build --no-restore
以上定义了一个名为 build 的 Job,Job 会在 Push 或者 Pr 时运行,签出代码->安装 .NET 7->执行 dotnet build
。Build 可以保证我们提交的代码是可以编译通过的。
这时进入 Github->仓库->Actions 便会看到我们创建的 Action。
我们可以直接点击 commit 前面的小图标进入 Action 运行详情:
棕色表示执行中,执行成功会变为绿的的 √,执行失败则会变为红色的 X。
提交一个 PR 观察是否会被触发:
可以看到向 main 分支创建的 PR 成功的触发了执行,并且后续的关联 PR 分支的提交都会被触发执行 Action。
4.快捷创建
Github 以及第三方社区,提供了一些便捷的工作流模板可以供我们使用:
可以搜索到符合要求的 Action,然后点击 Configure 即可。
5.结束
Github Actions 可以接管许多常见的任务,比如测试代码、构建代码、打包等,可以节省时间和精力,提高效率。
相关文章
- .NET(c#) 移动APP开发平台 – Smobiler(1)
- Github gist_github教程
- .Net PDB 文件是个什么东西,你了解吗?
- Github Copilot 值得购买吗?使用GitHub Copilot进行快速EDA的示例
- Net之测速工具
- 【错误记录】GitHub 提交报错 ( OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443 )
- net掌握Linux环境下的.NET开发(linuxdot)
- .net安装 Linux 上的 ASP.NET 环境(linux安装asp)
- .NET访问MySQL:简单实用的方法(.net访问mysql)
- 华云斥资千万收购 huayun.com/net/org 等域名
- 跨平台利器:.NET在Linux上的运行(.net运行在linux)
- Redis从入门到精通:.NET实现指南(redis.net书籍)
- Oracle Database: The Ultimate Connection Guide for .NET Developers(net连接oracle)
- .Net搭配Redis解决高性能应用问题(.net redis)
- Net开发Oracle数据库新技术攻关挑战(.net开发oracle)
- NET与Oracle携手走向未来(.net 对oracle)
- 快速搭建 NET 项目,用 MySQL 配置环境(.net 配置mysql)
- NET环境下 MySQL数据库应用实践(.net配合 mysql)
- 使用NET来连接MySQL数据库的简单方法(.net怎么连mysql)
- NET备份MySQL提升数据安全性(.net 备份mysql)
- Net和MySQL互相受益的强大组合(.net 与mysql)
- NET 对MySQL 的支持有限(.net不支持mysql)
- Redis集群实现高性能NET应用(redis集群 .net)
- 充分利用ASP.NET的三种缓存提高站点性能的注意方法
- asp.net下检测SQL注入式攻击代码
- .Net下执行sqlcmd的方法
- asp.net上传execl文件后,在页面上加载显示(示例代码)
- 解决iis7.5服务器上.net获取不到https页面的信息
- .net中webconfig详解
- ASP.NET实现伪静态网页方法小结