终极指南:poetry-dynamic-versioning让Git标签自动生成版本号

终极指南:poetry-dynamic-versioning让Git标签自动生成版本号

【免费下载链接】poetry-dynamic-versioningPlugin for Poetry to enable dynamic versioning based on VCS tags项目地址: https://gitcode.com/gh_mirrors/po/poetry-dynamic-versioning

poetry-dynamic-versioning是一款为Poetry打造的插件,能够基于版本控制系统(VCS)中的标签自动生成动态版本号,彻底告别手动管理版本号的繁琐流程。无论是开发迭代还是发布部署,它都能让版本管理变得简单高效。

📦 快速安装:三步开启动态版本之旅

1. 基础安装命令

通过Poetry安装插件的核心功能:

poetry add poetry-dynamic-versioning[plugin]

2. 旧版本Poetry适配方案

如果使用的是Poetry 2.0.0之前的版本,需根据安装方式选择对应命令:

  • Pipx安装的Poetry
    pipx inject poetry "poetry-dynamic-versioning[plugin]"

3. 验证安装

安装完成后,可通过查看帮助信息确认插件是否加载成功:

poetry dynamic-versioning --help

⚙️ 极简配置:5分钟完成项目集成

基础配置模板

在项目根目录的pyproject.toml中添加以下配置:

[tool.poetry-dynamic-versioning] enable = true

核心配置项解析

配置项说明示例值
enable启用动态版本控制true
vcs指定版本控制系统git
style版本号格式风格pep440

高级自定义

如需自定义版本号生成规则或文件替换模式,可添加扩展配置:

[tool.poetry-dynamic-versioning.substitutions] "__version__ = .*" = "__version__ = \"{version}\""

🚀 实用场景:让版本管理自动化

1. Git标签驱动版本

创建Git标签后自动生成对应版本号:

git tag v1.2.3 poetry build # 自动使用v1.2.3作为版本号

2. 开发环境版本标识

未打标签时自动生成开发版本号,如1.2.3.dev4+g1234abc,清晰标识开发进度。

3. 多环境版本控制

通过环境变量临时切换版本生成模式:

POETRY_DYNAMIC_VERSIONING_STYLE=semver poetry publish

📝 常见问题与解决方案

版本号不更新?

检查Git标签是否正确创建并推送,或执行以下命令强制刷新:

poetry dynamic-versioning --reset

与其他工具冲突?

pyproject.toml中添加命令限制,仅在构建和发布时启用动态版本:

[tool.poetry-dynamic-versioning] commands = ["build", "publish"]

📚 扩展资源

  • 完整配置文档:项目根目录下的README.md
  • 插件源码poetry_dynamic_versioning/plugin.py
  • 测试用例tests/test_integration.py

通过poetry-dynamic-versioning,你可以将版本管理的精力完全投入到代码开发中,让Git标签成为版本控制的唯一真相源。立即尝试,体验自动化版本管理的便捷!

【免费下载链接】poetry-dynamic-versioningPlugin for Poetry to enable dynamic versioning based on VCS tags项目地址: https://gitcode.com/gh_mirrors/po/poetry-dynamic-versioning

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考