【UV】 推荐使用UV管理Python

https://docs.astral.sh/uv/getting-started/features/#scripts

1. 基本操作

uv CLI命令

复制代码
# 编译
$ uv build
# 执行
$ uvx ./dist/uvx_test-0.1.1.tar.gz 
Hello from uvx-test!

2. 版本

复制代码
命令概述
uv version 命令用于更新您项目包的版本号。您可以直接指定一个新版本号,或者基于当前版本进行"语义化"递增。

更新到指定版本
要直接设置一个具体的版本号(如 1.0.0),可以将版本号作为参数直接提供:

bash
uv version 1.0.0
如果想先预览更改而不实际修改 pyproject.toml 文件,可以加上 --dry-run 标志:

bash
uv version 2.0.0 --dry-run
按语义化规则递增版本
更常用的方式是使用 --bump 选项,按语义化版本控制规则来递增版本号。文档将其支持的版本组件分为以下几类:

1. 主版本号组件:用于标识不兼容的重大更新。

major (主版本号,如 1.0.0 -> 2.0.0)

minor (次版本号,如 1.0.0 -> 1.1.0)

patch (修订号,如 1.0.0 -> 1.0.1)

2. 预发布标识组件:用于标记测试版、候选版等。

alpha, beta, rc (候选版)

dev (开发版)

post (后期版本)

3. 特殊操作:

stable (稳定版):用于清除预发布标识,将版本转为稳定版。

用法与规则:

基本递增:递增一个组件,例如将次版本号加1:

bash
uv version --bump minor
组合使用:可以按从大到小的顺序(如先 major, 后 dev)指定多个 --bump,命令会依次执行:

bash
# 例如:先升级修订号,再设置开发版本号
uv version --bump patch --bump dev
设置具体值:可以给组件设定一个明确的数字或字符串值,而不是简单递增:

bash
uv version --bump patch --bump dev=66463664
转为预发布版本:从稳定版转到预发布版时,必须同时递增一个主版本号组件(major/minor/patch中的一个):

bash
uv version --bump patch --bump beta  # 正确:例如 1.0.0 -> 1.0.1b0
更新预发布版本:如果已经在预发布阶段(如 1.0.0b1),只需递增预发布组件本身即可:

bash
uv version --bump beta  # 例如 1.0.0b1 -> 1.0.0b2
转为稳定版本:要从预发布版(如 1.0.0rc1)转为稳定版(1.0.0),使用 stable 来清除预发布标识:

bash
uv version --bump stable  # 例如 1.0.0rc1 -> 1.0.0
相关推荐
科技社2 分钟前
咪咕互娱亮相数字中国峰会:“精品游戏+轻量终端”组合,打开数字娱乐新想象
人工智能
m0_4954964130 分钟前
mysql处理复杂SQL性能_InnoDB优化器与MyISAM差异
jvm·数据库·python
数智化精益手记局1 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程
Flying pigs~~1 小时前
RAG 完整面试指南:原理、优化、幻觉解决方案
人工智能·prompt·rag·智能体·检索增强生成·rag优化
博.闻广见1 小时前
AI_概率统计-2.常见分布
人工智能·机器学习
企业架构师老王1 小时前
2026制造业安全生产隐患识别AI方案:从主流产品对比看企业级AI Agent的非侵入式落地路径
人工智能·安全·ai
forEverPlume1 小时前
PHP怎么使用Eloquent Attribute Composition属性组合_Laravel通过组合构建复杂属性【方法】
jvm·数据库·python
Aleeeeex1 小时前
RAG 那点事:从 8 份企业文档到能用的问答系统,全过程拆给你看
人工智能·python·ai编程
冬奇Lab1 小时前
一天一个开源项目(第87篇):Tank-OS —— Red Hat 工程师用一个周末,把 AI Agent 塞进了一个可启动的 Linux 镜像
人工智能·开源·资讯
小糖学代码1 小时前
LLM系列:2.pytorch入门:8.神经网络的损失函数(criterion)
人工智能·深度学习·神经网络