pip - A tool for installing and managing Python packages
pip <command> [options]
pip3 <command> [options]
pip is a Python package installer, recommended for
installing Python packages which are not available in the Debian archive. It
can work with version control repositories (currently only Git, Mercurial,
and Bazaar repositories), logs output extensively, and prevents partial
installs by downloading all requirements before starting installation.
On Debian, pip is the command to use when installing
packages for Python 2, while pip3 is the command to use when
installing packages for Python 3.
The command comes before any options. The following commands are
recognized:
- help
- Show help for commands.
- install
- Install packages.
- uninstall
- Uninstall packages.
- freeze
- Output installed packages in requirements format.
- list
- List installed packages.
- show
- Show information about installed packages.
- search
- Search PyPI for packages.
- wheel
- Build wheels from your requirements.
This list is by no means complete, and it only describes options
available to all commands. Use pip <command> --help for more
details on command specific options. A few command options are provided
below.
- -h,
--help
- Show more detailed command help.
- -v,
--verbose
- Give more output. Option is additive, and can be used up to 3 times.
- -V,
--version
- Show version and exit.
- -q,
--quiet
- Give less output.
- --log-file <path>
- Path to a verbose non-appending log, that only logs failures. This log is
active by default at ~/.pip/pip.log.
- --log <path>
- Path to a verbose appending log. This log is inactive by default.
- --proxy <proxy>
- Specify a proxy in the form [user:passwd@]proxy.server:port.
- --timeout <sec>
- Set the socket timeout (default 15 seconds).
- --exists-action <action>
- Default action when a path already exists: (s)witch, (i)gnore, (w)ipe,
(b)ackup.
- --cert <path>
- Path to alternate CA bundle.
pip install installs packages from:
- PyPI (a.k.a. The Cheeseshop) and other indexes, using requirements
specifiers.
- VCS project urls.
- Local project directories.
- Local or remote source archives
- Local wheel directories (python-pip-whl installs its wheels in /usr/share/
python-wheels and they can be locally installed by pip using
--find-links)
- -e,--editable <path/url>
- Install a project in editable mode (i.e. setuptools "develop
mode") from a local project path or a VCS url.
- -r,--requirement <file>
- Install from the given requirements file. This option can be used multiple
times.
- -t,--target <dir>
- Install packages into <dir>.
- -d,--download <dir>
- Download packages into <dir> instead of installing them, regardless
of what's already installed.
- --download-cache <dir>
- Cache downloaded packages in <dir>.
- --src <dir>
- Directory to check out editable projects into. The default in a virtualenv
is "<venv path>/src". The default for global installs is
"<current dir>/src".
- -U,
--upgrade
- Upgrade all packages to the newest available version. This process is
recursive regardless of whether a dependency is already satisfied.
- --force-reinstall
- When upgrading, reinstall all packages even if they are already
up-to-date.
- -I,
--ignore-installed
- Ignore the installed packages (reinstalling instead).
- --no-deps
- Don't install package dependencies.
- --install-option <options>
- Extra arguments to be supplied to the setup.py install command (use like
--install-option ="--install-scripts=/usr/local/bin"). Use
multiple --install-option options to pass multiple options to setup.py
install. If you are using an option with a directory path, be sure to use
absolute path.
- --global-option <options>
- Extra global options to be supplied to the setup.py call before the
install command.
- --user
- Install using the user scheme.
- --egg
- Install packages as eggs, not 'flat', like pip normally does. This option
is not about installing from eggs. (WARNING: Because this option
overrides pip's normal install logic, requirements files may not behave as
expected.)
- --root <dir>
- Install everything relative to this alternate root directory.
- --compile
- Compile py files to pyc.
- --no-compile
- Do not compile py files to pyc.
- --no-use-wheel
- Do not find and prefer wheel archives when searching indexes and
find-links locations.
- --pre
- Include pre-release and development versions. By default, pip only finds
stable versions.
- --no-clean
- Don't clean up build directories.
Package Index Options:
pip is able to uninstall most installed packages. Known exceptions
are:
- Pure distutils packages installed with python setup.py install,
which leave behind no metadata to determine what files were
installed.
- Script wrappers installed by python setup.py develop.
- -r,--requirement <file>
- Uninstall all the packages listed in the given requirements file. This
option can be used multiple times.
- -y,
--yes
- Don't ask for confirmation of uninstall deletions.
This manual page was originally written by Jeff Licquia
<licquia@debian.org>, later rewritten by Carl Chenet
<chaica@debian.org>. It was rewritten again and the source
converted to reStructuredText by Barry Warsaw
<barry@debian.org>.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU General Public License, version 3 or any
later version published by the Free Software Foundation.
Barry Warsaw <barry@debian.org>