Python包管理 Pip

[TOC]


从本地以开发者(develop or editable)模式安装

$ pip install -e .

从git仓库安装

$ pip install git+https://github.com/lixfz/sovon-cms

$ pip install git+https://github.com/lixfz/sovon-cms@<分支>

从国内镜像安装软件

可通过-i参数指定镜像位置,如:

$ pip install foo -i https://mirrors.aliyun.com/pypi/simple/

永久修改pip源

修改文件~/.pip/pip.conf(用户级)或/etc/pip.conf(系统级),如下:

[global]
timeout = 6000
index-url = https://mirrors.aliyun.com/pypi/simple/

[install]

如果要修改系统级的配置文件,可修改/etc/pip.conf

对于Windows,可修改 %APPDATA% 下pip/pip.ini

搭建本地镜像

  • 安装软件

可通过pip2pi搭建本地pip镜像,先安装该软件包:

$ pip install pip2pi-i https://mirrors.aliyun.com/pypi/simple/
  • 建立本地镜像(/opt/ip_repo):

$ mkdir /opt/ip_repo
$ pip2tgz /opt/ip_repo foo1 foo2==v.v.v. ...
$ dir2pi /opt/pip_repo

pip2tgz会下载指定的软件包及其依赖包

  • 使用本地镜像安装软件

$ pip install -i file:///opt/pip_repo/ foo1

发布自定义软件包

  • 注册账户

登录pypi官网通过邮箱注册自己的账户;如果初次使用的话,建议在Pypi的测试网站上也注册一个账户用于验证软件包是否正确。

  • 安装工具包

pip install setuptools wheel twine
  • 准备python包安装脚本

准备文件setup.pysetup.cfg,详情可参考:请参考:https://packaging.python.org/tutorials/packaging-projects/

  • 生成安装包

python setup.py sdist bdist_wheel

检查dist目录下是否有文件 <pkg>-<version>.tar.gz<pkg>-<version>...whl 存在。

  • 发布安装包

发布到测试库:

twine check  dist/*
twine upload  --repository testpypi dist/*

发布到正式库:

twine check  dist/*
twine upload dist/*

说明:执行twine upload是会提示输入用户名密码,输入前面注册的账户即可。