Poetry项目CLI命令全面指南:从项目创建到发布全流程
【免费下载链接】poetry 项目地址: https://gitcode.com/gh_mirrors/poe/poetry
前言
Poetry作为现代Python项目管理的利器,其命令行接口(CLI)提供了从项目初始化到依赖管理再到打包发布的全套工具链。本文将系统性地介绍Poetry的核心CLI命令,帮助开发者掌握Python项目全生命周期管理的最佳实践。
全局选项概览
Poetry所有命令都支持以下全局选项,这些选项可以调整命令的默认行为:
-v/-vv/-vvv:控制输出详细程度,v越多输出越详细-h:显示命令帮助信息-q:静默模式,不输出任何信息--ansi/--no-ansi:强制启用/禁用ANSI颜色输出-V:显示Poetry版本-n:非交互模式,不询问任何问题--no-plugins:禁用所有插件--no-cache:禁用Poetry源缓存-C:指定工作目录
项目初始化命令
1. 新建项目:poetry new
快速创建标准Python项目结构:
poetry new my-package
典型项目结构:
my-package
├── pyproject.toml
├── README.md
├── my_package
│ └── __init__.py
└── tests
└── __init__.py
高级用法:
--name:指定不同于文件夹名的项目名--src:使用src-layout项目结构- 支持命名空间包自动检测
2. 交互式初始化:poetry init
交互式创建pyproject.toml文件,适合已有项目:
poetry init
可指定初始参数:
--name:项目名称--description:项目描述--python:兼容Python版本--dependency:添加依赖项
依赖管理命令
3. 安装依赖:poetry install
安装项目所有依赖(生产+开发):
poetry install
关键选项:
--without:排除指定依赖组--with:包含可选依赖组--only:仅安装指定依赖组--sync:严格同步环境与lock文件--no-root:不安装项目本身
4. 更新依赖:poetry update
更新依赖到最新兼容版本并更新lock文件:
poetry update requests toml
5. 添加依赖:poetry add
添加依赖并自动更新pyproject.toml:
poetry add requests@^2.25.1
支持多种依赖来源:
- PyPI包:
poetry add pendulum - Git仓库:
poetry add git+https://github.com/sdispater/pendulum.git - 本地路径:
poetry add ./my-package/ - 可编辑模式:
--editable选项
6. 移除依赖:poetry remove
移除指定依赖:
poetry remove pendulum
项目信息查询
7. 查看依赖:poetry show
查看项目依赖信息:
poetry show --tree
实用选项:
--tree:树状展示依赖关系--outdated:仅显示过期的依赖--why:显示依赖被引入的原因
构建与发布
8. 构建项目:poetry build
构建源码包和wheel包:
poetry build
选项说明:
-f:指定构建格式(sdist/wheel)-o:指定输出目录-l:添加本地版本标识符
9. 发布项目:poetry publish
发布构建好的包到仓库:
poetry publish
关键选项:
-r:指定发布仓库-u/-p:仓库认证信息--build:发布前自动构建
最佳实践建议
- 版本控制:始终将pyproject.toml和poetry.lock文件纳入版本控制
- 依赖分组:合理使用依赖分组(dev, test, docs等)保持生产环境精简
- CI/CD集成:在CI流程中使用
--sync确保环境一致性 - 发布规范:私有包使用本地版本标识,公共包遵循PEP 440规范
结语
Poetry的CLI工具链为Python项目管理提供了完整的解决方案。通过合理使用这些命令,开发者可以高效地管理项目依赖、构建发布流程,确保开发环境的一致性。建议结合项目实际需求,灵活运用各命令的选项,构建适合自己的工作流程。
【免费下载链接】poetry 项目地址: https://gitcode.com/gh_mirrors/poe/poetry
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



