目录

Lomachenko

本项目为 OSS 课程实验仓库,当前实现了基于分治的大整数乘法程序(multiplyDC.cpp),并提供最小可用的 CI/CD 流程。

本地构建

方式一:直接使用 g++

Linux/macOS:

g++ -std=c++17 -Wall -Wextra -O2 multiplyDC.cpp -o multiply

Windows (PowerShell):

g++ -std=c++17 -Wall -Wextra -O2 multiplyDC.cpp -o multiply.exe

方式二:使用 CMake

cmake -S . -B build
cmake --build build

运行示例

echo "12 34" | ./multiply

预期输出:

408

Windows 可执行文件示例:

"12 34" | .\multiply.exe

回归测试

测试用例位于 tests/test-cases.txt,格式如下:

input_a|input_b|expected

Linux/macOS:

chmod +x scripts/run-tests.sh
./scripts/run-tests.sh ./multiply tests/test-cases.txt

Windows (PowerShell):

./scripts/run-tests.ps1 -Binary .\multiply.exe -CaseFile tests/test-cases.txt

CI 流程

CI 工作流文件:.github/workflows/ci.yml

触发条件:

  • push 到 main
  • PR 到 main
  • 手动触发(workflow_dispatch

执行内容:

  • Ubuntu + Windows 双平台编译
  • 运行回归测试脚本
  • 上传平台构建产物为 Actions artifact

CD(Release)流程

Release 工作流文件:.github/workflows/release.yml

触发条件:

  • 推送语义化标签:v*(例如 v1.0.0

执行内容:

  • Ubuntu + Windows 双平台构建与测试
  • 自动创建 GitHub Release
  • 上传以下资产:
    • multiply-linux-x86_64
    • multiply-windows-x86_64.exe

发版步骤

git tag v1.0.0
git push origin v1.0.0

推送完成后,GitHub Actions 会自动执行 Release 工作流并发布二进制资产。

关于
52.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号