【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
相关推荐
冬奇Lab11 小时前
Workflow 系列(02):设计范式——四层架构、三种 Context 传递模式与确认门设计
人工智能·agent·工作流引擎
冬奇Lab11 小时前
每日一个开源项目(第145篇):Trellis - 把项目记忆、规范和任务上下文持久化进代码仓库
人工智能·开源·资讯
有道AI情报局11 小时前
Harness即产品
人工智能·agent
罗西的思考12 小时前
机器人 / 强化学习】HIL-SERL:人类在环驱动的具身智能进化框架
人工智能·算法·机器学习
IT_陈寒13 小时前
SpringBoot自动配置的坑,我的API突然就404了
前端·人工智能·后端
笃行35014 小时前
从零到上线:用 EdgeOne Makers + CodeBuddy 搭一个「对账核对员」AI Agent
人工智能
用户68563262086914 小时前
Claude Code 乱猜字段名?我给它写了一个"数据库查询约束 Skill"
人工智能
你_好14 小时前
# 给你的产品嵌入一个「会操作界面的 AI 助手」
人工智能
ShallWeL14 小时前
【机器学习】(3)—— 线性回归:梯度下降
人工智能·机器学习
陈广亮14 小时前
Prompt、Context、Harness、Agentic:LLM 应用四层嵌套结构,搞清自己卡在哪一层
人工智能