【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
相关推荐
恣逍信点7 小时前
《凌微经 · 理悖相涵》第六章 理悖相涵——关系构型之模因
人工智能·科技·程序人生·生活·交友·哲学
晚霞的不甘7 小时前
Flutter for OpenHarmony 可视化教学:A* 寻路算法的交互式演示
人工智能·算法·flutter·架构·开源·音视频
小程故事多_807 小时前
Agent Infra核心技术解析:Sandbox sandbox技术原理、选型逻辑与主流方案全景
java·开发语言·人工智能·aigc
陈天伟教授7 小时前
人工智能应用- 语言处理:02.机器翻译:规则方法
人工智能·深度学习·神经网络·语言模型·自然语言处理·机器翻译
独好紫罗兰8 小时前
对python的再认识-基于数据结构进行-a006-元组-拓展
开发语言·数据结构·python
Dfreedom.8 小时前
图像直方图完全解析:从原理到实战应用
图像处理·python·opencv·直方图·直方图均衡化
人机与认知实验室8 小时前
一些容易被人工智能取代的职业
人工智能
茶栀(*´I`*)8 小时前
【NLP入门笔记】:自然语言处理基础与文本预处理
人工智能·自然语言处理·nlp
却道天凉_好个秋8 小时前
Tensorflow数据增强(三):高级裁剪
人工智能·深度学习·tensorflow
铉铉这波能秀8 小时前
LeetCode Hot100数据结构背景知识之集合(Set)Python2026新版
数据结构·python·算法·leetcode·哈希算法