mirror of
https://github.com/pypa/pip
synced 2023-12-13 21:30:23 +01:00
b90fc1ad8d
While it’s true that pip can’t install eggs, it’s not true anymore that it installs only source distributions.
65 lines
2 KiB
ReStructuredText
65 lines
2 KiB
ReStructuredText
===========
|
||
Other tools
|
||
===========
|
||
|
||
virtualenv
|
||
----------
|
||
|
||
pip is most nutritious when used with `virtualenv
|
||
<http://pypi.python.org/pypi/virtualenv>`__. One of the reasons pip
|
||
doesn't install "multi-version" eggs is that virtualenv removes much of the need
|
||
for it. Because pip is installed by virtualenv, just use
|
||
``path/to/my/environment/bin/pip`` to install things into that
|
||
specific environment.
|
||
|
||
To tell pip to only run if there is a virtualenv currently activated,
|
||
and to bail if not, use::
|
||
|
||
export PIP_REQUIRE_VIRTUALENV=true
|
||
|
||
easy_install
|
||
------------
|
||
|
||
pip was originally written to improve on `easy_install <http://pythonhosted.org/setuptools/easy_install.html>`_ in the following ways:
|
||
|
||
* All packages are downloaded before installation. Partially-completed
|
||
installation doesn't occur as a result.
|
||
|
||
* Care is taken to present useful output on the console.
|
||
|
||
* The reasons for actions are kept track of. For instance, if a package is
|
||
being installed, pip keeps track of why that package was required.
|
||
|
||
* Error messages should be useful.
|
||
|
||
* The code is relatively concise and cohesive, making it easier to use
|
||
programmatically.
|
||
|
||
* Packages don't have to be installed as egg archives, they can be installed
|
||
flat (while keeping the egg metadata).
|
||
|
||
* Native support for other version control systems (Git, Mercurial and Bazaar)
|
||
|
||
* Uninstallation of packages.
|
||
|
||
* Simple to define fixed sets of requirements and reliably reproduce a
|
||
set of packages.
|
||
|
||
pip doesn't do everything that easy_install does. Specifically:
|
||
|
||
* It cannot install from eggs. That’s not a problem anymore though because pip
|
||
supports the superior binary `wheel format
|
||
<https://wheel.readthedocs.org/en/latest/>`_ since the 1.4 release.
|
||
|
||
* It is incompatible with some packages that extensively customize distutils
|
||
or setuptools in their ``setup.py`` files.
|
||
|
||
|
||
buildout
|
||
--------
|
||
|
||
If you are using `zc.buildout
|
||
<http://pypi.python.org/pypi/zc.buildout>`_ you should look at
|
||
`gp.recipe.pip <http://pypi.python.org/pypi/gp.recipe.pip>`_ as an
|
||
option to use pip and virtualenv in your buildouts.
|
||
|