Python 包管理
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 包管理相关的知识,希望对你有一定的参考价值。
安装途径
根据 [1],安装途径有:
- PyPI 或其他索引地址。PyPI 是最常用的,也是默认的包索引,所有人都可以获取包和上传他们自己的包。其他索引地址可以是豆瓣源,甚至是自己搭建的包索引地址
- 从版本控制器安装,比如 GitHub、GitLab
- 从本地安装,格式可以是:源分发包(sdist)、wheel 包、源文件的压缩文件
升级包
如果是从 PyPI 上升级包,我们只需要更改包的版本号就可以。但实际上整个流程是:
- 包的维护者修改代码
- 更改版本号,发布到 PyPI
维护自己的包
正常维护
像正常的包一样维护:
- 改动代码
- 修改版本号,发布到 PyPI
这样使用者只需要更改版本号就能升级。
使用者部署时不需要对该包做额外处理。
Git submodule
将包作为 submodule 添加到要使用的项目中,然后手动安装,包的版本通过 submodule 的 commit 与版本号来追踪。
部署时需要在具有该包 git 权限的机器上将 submodule 打包,然后上传到部署机器,因为一般的部署机器没有 git 权限。
如果只通过 commit 来追踪,由于这里存在将 submodule 打包再安装,所以如果要安装最新的 submodule,要么更新 submodule 的版本号或者强制重新安装 submodule 即使版本号一样。
内部使用的包
如果不希望包暴露到外部,那么可以使用『 Git submodule』或修改『正常维护』。
修改『正常维护』
- 将包上传到安全的地址
- 如果部署机器可以访问上述地址,那么可以拉取下来再安装或者从其他源安装
- 如果部署机器不可以访问上述地址,那要在可以访问上述地址的机器上将包上传到部署机器再安装
参考
以上是关于Python 包管理的主要内容,如果未能解决你的问题,请参考以下文章