用途:获取 GitHub 项目在指定版本区间内的所有 release,生成变更汇总报告,适合回答“两个版本之间改了什么”或整理 changelog 摘要。
主要能力:通过 GitHub API 分页拉取 release 列表并按发布时间排序,定位版本区间后生成报告;默认输出 Markdown,含版本区间、每个 release 的发布日期与变更内容、版本汇总表;使用 --json 可输出机器可读 JSON,便于管道或后续处理。
使用方式:运行内置脚本,格式为 python3 scripts/check_releases.py owner/repo <起始版本> <目标版本>。示例:python3 scripts/check_releases.py facebook/react v18.0.0 v18.2.0 查看两版本间变更;只给起始版本则获取其后到最新的所有 release;加 --json 输出 JSON;加 --include-prereleases 包含预发布;加 --dry-run 仅预览请求不实际调用。常用选项还有 --verbose、--max-pages N(默认 10)、--per-page N(1-100,默认 100)、--include-drafts、--github-token TOKEN。
工作流程:解析 owner/repo 与版本号,分页获取 release 列表,过滤 draft/prerelease 并定位区间,最后生成 Markdown 或 JSON 报告。
限制:未认证请求限速 60 次/小时,建议设置 GITHUB_TOKEN 环境变量提升到 5000 次/小时;版本号支持带 v 前缀与不带前缀两种格式;默认过滤 draft 和 prerelease;每页最多 100 条,大范围版本会自动分页;请求均为只读 GET,可安全重复执行。