在团队协作开发中,各个组员间共享依赖是刚需而公司的代码资产是不会直接暴露到互联网上的,这就需要假设一个公司私有的包管理平台,比如Java就有Nexus作为Maven/Gradle的私库,对于Python来讲也有类似的平台(Neuxs也可以管理Python包). 当你为公司工作并且你的公司有自己的私有的包管理平台时,你就需要接触它了.
我们个人经常这样安装自己需要的包,以Flask
为例
pip install Flask==2.0.1
上面的命令会默认的从公共的pypi.org中下载所需的依赖文件.
当你需要将自己的包上传到公共的pypi.org仓库的时候你需要
twine upload dist/*
如果你指定为向公司的私有库上传依赖,那么需要告诉pip你的依赖库的地址和口令
比如
twine upload --repository-url https://your-private-repository-url/ dist/*
Uploading distributions to https://your-private-repository-url/
Enter your username: xxx
Enter your password: xxx
假如你每次打包都需要这样做,那么太不方便了. 这时pypirc就派上用场了,它是用于Python包管理的自定义配置文件.它在你电脑上的路径为$HOME/.pypirc
. 当你配置在里面配置了自己的私库地址和口令后,你就无需反复的在命令行中显示的指定相关的参数了,twine会自己到$HOME/.pypirc
中读取相关的配置,不再需要你每次额外的手动输入
它的格式为:
[distutils]
index-servers =
first-repository
second-repository
[first-repository]
repository = <first-repository URL>
username = <first-repository username>
password = <first-repository password>
[second-repository]
repository = <second-repository URL>
username = <second-repository username>
password = <second-repository password>
上面的例子配置了2个库地址,并分别为它们设置了各自的口令.