这个项目包含两个 GitHub Actions 工作流程:
- 推送到
main或dev分支 - 对
main或dev分支创建 Pull Request
- 代码检查 -
cargo check - 测试运行 -
cargo test - 代码格式 -
cargo fmt --check - 代码规范 -
cargo clippy - 构建验证 - 在三个平台上构建验证
- 每次推送代码或创建 PR 时自动运行
- 确保代码质量和跨平台兼容性
- 自动触发:推送以
v开头的标签(如v1.0.0) - 手动触发:在 GitHub Actions 页面手动运行
duck-cli-macos-universal.tar.gz- 推荐 通用二进制文件- 同时支持 Intel (x86_64) 和 Apple Silicon (ARM64)
duck-cli-macos-amd64.tar.gz- Intel 专用版本duck-cli-macos-arm64.tar.gz- Apple Silicon 专用版本
duck-cli-linux-amd64.tar.gz- x86_64 架构duck-cli-linux-arm64.tar.gz- ARM64 架构
duck-cli-windows-amd64.zip- x86_64 架构duck-cli-windows-arm64.zip- ARM64 架构
# 创建并推送标签
git tag v1.0.0
git push origin v1.0.0- 进入 GitHub 仓库
- 点击 "Actions" 标签
- 选择 "Release" 工作流程
- 点击 "Run workflow"
- 输入标签名称(如
v1.0.0或nightly)
建议使用语义化版本号:
v1.0.0- 主要版本v1.1.0- 功能更新v1.0.1- 修复版本nightly- 开发版本
在推送前可以本地运行这些检查:
# 代码检查
cargo check
# 运行测试
cargo test
# 格式化代码
cargo fmt
# 检查代码规范
cargo clippy
# 构建发布版本
cargo build --release- 开发 → 推送到
dev分支 → CI 检查 - 合并 → 创建 PR 到
main→ CI 检查 - 发布 → 推送标签 → 自动构建和发布
- 标签命名:必须以
v开头(如v1.0.0) - 权限:需要仓库的
GITHUB_TOKEN权限(自动提供) - 构建时间:完整构建大约需要 15-20 分钟
- 缓存:使用 Cargo 缓存加速构建过程
在仓库主页可以看到:
- 检查 Rust 代码是否编译通过
- 确保所有测试都能通过
- 检查代码格式和 clippy 警告
- 确保标签格式正确(以
v开头) - 检查是否有权限问题
- 查看具体的错误日志
- Linux ARM64 使用
cross工具 - Windows 和 macOS 在原生环境构建
- 如有问题,检查依赖是否支持目标架构