Pip freeze vs pep liste
Une comparaison des sorties révèle des différences:
user@user-VirtualBox:~$ pip list
feedparser (5.1.3)
pip (1.4.1)
setuptools (1.1.5)
wsgiref (0.1.2)
user@user-VirtualBox:~$ pip freeze
feedparser==5.1.3
wsgiref==0.1.2
Du Pip, de documentation,
freeze Output installed packages in requirements format.
list List installed packages.
mais qu'est-ce que "les exigences de format," et pourquoi ne pip list
générer une liste plus complète que pip freeze
?
- Pour info, voici le docs.
Vous devez vous connecter pour publier un commentaire.
Lorsque vous utilisez un
virtualenv
, vous pouvez spécifier unrequirements.txt
fichier pour installer toutes les dépendances.Une utilisation typique:
Les paquets doivent être dans un format spécifique pour
pip
à comprendre, ce qui estQui est le "exigences de format".
Ici,
django==1.4.2
implique installerdjango
version1.4.2
(même si la dernière est la 1.6.x).Si vous ne spécifiez pas
==1.4.2
, la dernière version disponible sera installé.Vous pouvez en lire plus dans "Virtualenv et pip Bases",
et le fonctionnaire "Les Exigences De Format De Fichier" de la documentation.
pip list
des listes de tout etpip freeze
installe tout installé par le pip.pip install
wsgiref
.wsgiref.egg-info
dans le répertoire Lib, c'est pourquoi pep sait à ce sujet. Vous ne pouvez pas [de l'onu]l'installer avec le pip, et, plus tard, des versions de Python omettre le fichier de métadonnées afin de ne pas apparaître.Pour répondre à la deuxième partie de cette question, les deux paquets indiqué dans
pip list
mais paspip freeze
sontsetuptools
(qui est easy_install) etpip
lui-même.Il ressemble
pip freeze
n'a tout simplement pas la liste des packages pip dépend lui-même. Vous pouvez utiliser le--all
drapeau à montrer ces paquets.De la documentation:
pip freeze
a une option--all
à montrer:pip, setuptools, distribute, wheel
pip.pypa.io/fr/stable/de référence/pip_freezeRegarder la pip documentation, qui décrit les fonctionnalités à la fois comme:
pip liste
pip freeze
Donc il y a deux différences:
Format de sortie,
freeze
nous donne l'exigence standard format qui peut être utilisé plus tard avecpip install -r
pour installer les exigences de.De sortie de contenu,
pip list
inclure editables quipip freeze
ne pas.La principale différence est que la sortie de
pip freeze
peuvent être déversés dans un requirements.txt fichier et utilisé plus tard pour re-construire la "gelée" de l'environnement.En d'autres termes, vous pouvez exécuter:
pip freeze > frozen-requirements.txt
sur une machine, puis plus tard sur un autre ordinateur ou sur un environnement propre que vous pouvez faire:pip install -r frozen-requirements.txt
et vous obtiendrez l'une à l'identique de l'environnement, avec les mêmes dépendances installées comme vous l'aviez dans l'environnement où vous avez généré le frozen-requirements.txt.