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

发布时间:2026/11/5 10:08:31

如何用 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),仅供参考
延伸阅读

更多相关文章

2026/11/2 15:14:02

WinApps 自动化部署完整指南:4 步批量配好 20 台设备

WinApps 自动化部署完整指南:4 步批量配好 20 台设备 【免费下载链接】winapps Run Windows apps such as Microsoft Office/Adobe in Linux (Ubuntu/Fedora) and GNOME/KDE as if they were a part of the native OS, including Nautilus integration. Hard fork of https://…

2026/11/5 10:03:39

附录 A · 工具速查表

附录导读本附录是混淆工具和反混淆工具的快速索引,按用途分类,相当于一本"工具字典":第 1 节:混淆工具——把代码变难分析的"加固方"武器;第 2 节:反混淆工具——把混淆代码还原回去的…

2026/11/5 10:03:39

PDO属性设置全解析:高效数据库操作秘诀

PDO::关于PHP的PDO这种技术, 它有一份参考手册。PDO:: — 设置属性(PHP 5 > 5.1.0, PECL pdo > 0.1.0)说明语法bool PDO::setAttribute ( int $attribute , mixed $value )我们需要把数据库句柄的属性给设置好。在下文之中, 会列举出一些可以被大家所用到的通用的属性内容…

2026/11/5 10:03:39

JAVA——抽象类、内部类和接口

一、抽象类如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类可以包含抽象方法与普通方法和属性。在Java中,一个类如果被 abstract 修饰称为抽象类,抽象类中被 abstract 修饰的方法称为抽象方法,抽…

2026/11/5 10:03:39

二叉树的学习

二叉树 1.树形概念 想了解二叉树的概念我们得先知道数的概念 树是⼀种⾮线性的数据结构,它是由n(n>0)个有限结点组成⼀个具有层次关系的集合。把它叫做树是因为它看起来像⼀棵倒挂的树,也就是说它是根朝上,⽽叶朝下…

2026/11/4 12:38:23

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/5 0:02:07

多智能体协作系统架构设计与实践优化

1. 多智能体协作系统的时代背景2017年Transformer架构的诞生彻底改变了人工智能的发展轨迹。当行业还沉浸在单一大模型带来的性能突破时,Anthropic的研究团队已经将目光投向了更前沿的领域——如何让多个智能体通过协作产生超越单体能力的系统智能。这就像交响乐团中…

2026/11/5 0:02:07

大模型系统性入门实战指南:从原理到部署微调的全链路路线

提到大模型的系统性入门,我先说个结论:这事真不难,难的是资料太散、路线太多,今天这个框架明天那个工具,新人很容易在“收藏夹吃灰”和“教程看到一半放弃”之间反复横跳。市面上关于大模型的内容少说有几十万篇&#…

2026/11/5 0:02:07

鸿蒙文件系统沙箱机制解析与开发实践

1. 鸿蒙文件系统沙箱机制深度解析作为一名从Android转向鸿蒙开发的工程师,我深刻体会到文件系统访问是迁移过程中最先遇到的"拦路虎"。在Android上运行良好的文件读写代码,在鸿蒙真机环境却频频出现文件写入后神秘消失或直接抛出权限拒绝错误的…

2026/11/4 12:38:23

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑