ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

如何用 poetry version 按 bump 规则升级项目版本?

如何用 poetry version 按 bump 规则升级项目版本? 如何用 poetry version 按 bump 规则升级项目版本【免费下载链接】poetryPython packaging and dependency management made easy项目地址: https://gitcode.com/GitHub_Trending/po/poetry在维护一个用 Poetry 管理的包时每次发布前都需要把pyproject.toml中记录的版本号按 semver 规则提升修一个 bug 升 patch、加新功能升 minor、有破坏性变更升 major。Poetry 自带的poetry version命令可以显示项目当前版本也可以在给定一个 bump 规则如patch、minor、major后自动计算新版本并写回pyproject.toml不需要手动编辑文件。前提是项目已初始化且pyproject.toml中定义了version字段[project]段或[tool.poetry]段均可包模式下该字段是必填的见 pyproject.toml 说明。查看当前版本在项目根目录执行poetry version输出格式为“项目名 版本号”例如文档测试中simple-project当前版本为1.2.3时输出simple-project 1.2.3如果只需要版本号本身方便在脚本中使用加--shortpoetry version --short # 输出1.2.3可用的 bump 规则poetry version的参数是一个合法的 PEP 440 版本字符串或以下 7 个 bump 规则之一patch、minor、major、prepatch、preminor、premajor、prerelease。docs/cli.md 给出的各规则效果示例如下before/after 均为文档示例用于说明规则行为rulebeforeaftermajor1.3.02.0.0minor2.1.42.2.0patch4.1.14.1.2premajor1.0.22.0.0a0preminor1.0.21.1.0a0prepatch1.0.21.0.3a0prerelease1.0.21.0.3a0prerelease1.0.3a01.0.3a1prerelease1.0.3b01.0.3b1major/minor/patch用于正式版本pre*系列用于在下一个正式版本前插入预发布版本。如果你的项目采用语义化版本版本选择依据可参考 Libraries 文档的 Versioning 一节。先 --dry-run 预览再正式执行poetry version会直接修改pyproject.toml不确定结果时可以先用--dry-run选项它会执行版本计算并打印结果但不更新pyproject.toml文件。# 预览将 1.2.3 按 major 提升到 2.0.0不写入文件 poetry version --dry-run major此时终端会看到类似这样的输出文档测试中的示例结果Bumping version from 1.2.3 to 2.0.0确认无误后去掉--dry-run正式执行poetry version major也可以用--short让 bump 后只输出新版本号poetry version --short patch # 输出1.2.4验证版本号已写回执行 bump 后再查询一次版本确认pyproject.toml已被更新poetry version --short输出应为 bump 后的新版本号。也可以直接查看pyproject.toml中version字段。另外直接把目标版本作为参数传入也可以跳过规则计算参数可以是任意合法的 PEP 440 字符串poetry version 2.0.0 # 输出Bumping version from 1.2.3 to 2.0.0预发布版本与 --next-phaseprerelease规则作用于预发布阶段号对正式版本会先产生下一个 patch 的a0预发布如1.0.2→1.0.3a0对已有预发布版本则递增阶段内的序号1.0.3a0→1.0.3a1。如果需要跨阶段推进alpha → beta → rc → 正式版加上--next-phase选项。文档给出的效果示例rulebeforeafterprerelease --next-phase1.0.3a01.0.3b0prerelease --next-phase1.0.3b01.0.3rc0prerelease --next-phase1.0.3rc01.0.3poetry version prerelease --next-phase注意事项当前项目版本必须能被解析为合法的 semver/PEP 440 字符串否则版本计算会失败Libraries 文档 也强调 Poetry 要求所有项目版本符合 PEP 440例如1.0.0-hotfix.1不合法可改用1.0.0-post1。--dry-run只做预览不写文件不加该选项时poetry version 规则会立即把新版本写回pyproject.toml执行前可用 git 状态确认改动范围。命令在哪个项目下执行就修改哪个项目的pyproject.toml需要操作其他目录的项目时可用全局选项--directory指定工作目录见 Commands 文档。【免费下载链接】poetryPython packaging and dependency management made easy项目地址: https://gitcode.com/GitHub_Trending/po/poetry创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表