PyPI测试与发布
完整发布流程(例如发布pip install xxx)
第 1 步:注册 PyPI 账号
1. 打开 https://pypi.org/account/register/
2. 填写用户名、邮箱、密码,完成注册
3. 去邮箱点击验证链接
第 2 步:生成 API Token
1. 登录后进入 https://pypi.org/manage/account/
2. 往下滚到 API tokens 部分
3. 点击 Add API token
4. 名称随便填(比如 xxx-upload),Scope 选 Entire account(第一次发布只能选这个)
5. 点 Create token
6. 立刻复制 token(以 pypi- 开头的一长串,只显示一次)
第 3 步:检查包名是否可用
浏览器打开 https://pypi.org/project/xxx/ ,如果显示 404 就是没被占用,可以用。
第 4 步:安装构建工具
pip install build twine
第 5 步:构建
cd 项目目录
python -m build
成功后会在 dist/ 下生成两个文件:
dist/
xxx-1.0.0.tar.gz # 源码包
xxx-1.0.0-py3-none-any.whl # wheel 包
第 6 步:(可选但建议)先在 TestPyPI 上测试
TestPyPI 是 PyPI 的测试站,发上去不影响正式环境。
# 注册 TestPyPI 账号(和 PyPI 是独立的)
# https://test.pypi.org/account/register/
# 同样生成一个 API token
# 上传到 TestPyPI
twine upload --repository testpypi dist/*
# Username: token
# Password: (粘贴你的 TestPyPI token)
# 测试安装
pip install -i https://test.pypi.org/simple/ xxx
确认没问题再发正式版。
如果pip install 遇到依赖包无法安装的问题,尝试--extra-index-url
pip install -i https://test.pypi.org/simple/ xxx --extra-index-url https://pypi.org/simple/ xxx
第 7 步:发布到正式 PyPI
twine upload dist/*
提示输入:
Username: token
Password: pypi-xxxxxxxxxxxx(粘贴第 2 步的 token)
上传成功后会显示:
View at:
https://pypi.org/project/xxx/1.0.0/
第 8 步:验证
在任意干净环境里:
pip install xxx
---
后续版本更新
每次发新版本:
1. 改 pyproject.toml 里的 version(比如 1.0.0 → 1.0.1)
2. 删掉旧的 rmdir /s /q dist
3. 重新构建:python -m build
4. 上传:twine upload dist/*
PyPI 不允许覆盖已发布的版本号,必须递增。