x-cmd pkg | rye - 全面的 Python 项目和包管理解决方案
简介
rye 是由 astral-sh 用 Rust 编写的 Python 项目和包管理解决方案。它是一个全面且现代化的方案,整合了 python 版本管理、自动化依赖管理、python 包管理、自动化虚拟环境管理、项目初始化、python lint 等功能,适合中大型项目或团队使用。
rye、uv 和 ruff 的关系:它们都是 astral-sh 团队开发的现代 Python 开发工具。astral-sh 团队的设想是能发布一个“最终版”的 rye,它在底层调用 uv、ruff 等工具,并提供一个统一的界面来管理 Python 项目。(在必要时,rye 支持的 python 项目可以直接迁移到 uv 上)
快速上手
1.安装并启动 rye:
eval "$(curl https://get.x-cmd.com)" # 安装 x-cmd
x env use rye # 使用 x-cmd 安装 rye
2.快速搭建 python 项目环境:
- rye 全局安装的目录默认为用户主目录的 .rye 目录。
- rye toolchain:用于下载和管理 python。rye 将不同版本的 python 定义为不同的 python 工具链,并以此管理它们。
- rye init:初始化新的或现有的 Python 项目。相比于 uv init,rye init 提供的是全方位的初始化,项目的目录结构更为规范化。
- rye add:下载依赖项并添加到项目中。相比于 uv add,rye add 采用的 lock 文件较为宽松,但更为通用,可移植性更好。
- rye list:查看已下载的项目依赖项。相比于 uv tree,rye list 更为简洁,只列出依赖的包和版本号,类似于 pip list。
- rye remove:从项目中删除依赖项。
3.管理和运行 python 项目:
- rye run:运行当前项目中 Python 包提供的命令。注意,该命令与 uv run 和 uvx 的差异较大,不要混淆。 详情请参考 rye 和 uv 的官方文档。
- rye tools install:在全局环境中安装 python 应用程序。安装位置为用户主目录的 .rye/tools 目录,相应的 shim 件位于用户主目录的 .rye/shims 目录下。
- rye fmt/lint:检查或格式化项目中的 python 代码。
- rye build:构建用于分发的包。
- rye publish:将包发布到包仓库。
功能特点
- 内置 python 版本管理:能自动下载和管理多个版本的 python ,并能自动切换。
- 功能全面且上手简单:整合了 Python 项目开发流程中常用的功能,如依赖管理、虚拟环境管理、python lint 、测试、打包、发布等。
- 兼容性好:基于 pyproject.toml 管理项目,能与现有的 python 项目和工具无缝衔接。
竞品和相关项目
- ruff:由 Astral-sh 团队开发的现代化 Python 代码检查工具,特点是速度快、支持多种语言、支持多种框架。
- uv:由 Astral-sh 团队开发的现代化 Python 项目管理工具,速度快,能替代 pip、pip-tools、pipx、poetry、pyenv、virtualenv 等工具。
- poetry:由 python-poetry 团队开发的现代化 Python 项目依赖管理和打包工具,是当前最流行的 Python 项目管理工具之一。
进一步阅读
- rye GitHub - rye 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 rye 和参与社区贡献。
- rye 官网文档 - rye 的官方文档提供了详细的指南和参考,包括 rye 的基本概念、命令用法。
更多内容请查阅 :
rye | x-cmd pkg | 一个全面的 Python 项目和包管理解决方案
转载请标明原文链接 :
https://www.x-cmd.com/pkg/rye