【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
相关推荐
小二·15 小时前
Python Web 开发进阶实战:性能压测与调优 —— Locust + Prometheus + Grafana 构建高并发可观测系统
前端·python·prometheus
leo__52015 小时前
基于MATLAB的交互式多模型跟踪算法(IMM)实现
人工智能·算法·matlab
脑极体15 小时前
云厂商的AI决战
人工智能
njsgcs16 小时前
NVIDIA NitroGen 是强化学习还是llm
人工智能
七牛云行业应用16 小时前
重构实录:我删了 5 家大模型 SDK,只留了 OpenAI 标准库
python·系统架构·大模型·aigc·deepseek
知乎的哥廷根数学学派16 小时前
基于多模态特征融合和可解释性深度学习的工业压缩机异常分类与预测性维护智能诊断(Python)
网络·人工智能·pytorch·python·深度学习·机器学习·分类
mantch16 小时前
Nano Banana进行AI绘画中文总是糊?一招可重新渲染,清晰到可直接汇报
人工智能·aigc
编程小白_正在努力中16 小时前
第1章 机器学习基础
人工智能·机器学习
一人の梅雨16 小时前
亚马逊SP-API商品详情接口轻量化实战:合规与商业价值提取指南
python
wyw000017 小时前
目标检测之SSD
人工智能·目标检测·计算机视觉