La gestion de contenu d'requirements.txt pour un environnement virtuel Python
Je suis donc la création d'un nouveau Flacon d'application à partir de zéro. Comme tous les bons développeurs, ma première étape a été de créer un environnement virtuel.
La première chose que j'ai installer dans l'environnement virtuel est Flask==0.11.1
. Flacon de installe ses dépendances suivantes:
- cliquez sur==6.6
- itsdangerous==0.24
- Jinja2==2.8
- MarkupSafe==0.23
- Werkzeug==0.11.11
- roue==0.24.0
Maintenant, j'ai créer un requirements.txt pour assurer à chacun de cloner le dépôt a la même version des bibliothèques. Cependant, mon dilemme est le suivant:
- Dois-je mentionner chaque Flacon de dépendances dans le requirements.txt avec les numéros de version
OU - Dois-je viens de vous parler de l'exacte Flacon numéro de version dans le requirements.txt et espère que quand ils font un pip install requirements.txt, Flacon prendra soin de la gestion de la dépendance et qu'ils vont télécharger les versions correctes des bibliothèques dépendantes
OriginalL'auteur Amistad | 2016-09-09
Vous devez vous connecter pour publier un commentaire.
Les deux approches sont valables et de travail. Mais il y a un peu de différence. Lorsque vous entrez toutes les dépendances dans le
requirements.txt
vous serez en mesure d'afficher les versions. Si vous les laissez, il y a peut être une mise à jour ultérieure et si le Flacon a quelque chose commeWerkzeug>=0.11
dans ses dépendances, vous obtiendrez une version plus récente de Werkzeug installé.Il descend donc à des mises à jour vs environnement défini. Tout ce qui vous convient le mieux.
OriginalL'auteur Klaus D.
Une bonne chose ici est que vous utilisez virtualenv, qui va vous rendre la tâche très facile.
$source path_to_virtualenv/bin/active
)Obtenir tous les paquets avec dépendances requirements.txt
Vous n'avez pas à vous inquiéter de rien d'autre que de faire la prochaine personne qui installe les exigences de manière récursive par commande suivante
OriginalL'auteur Vishvajit Pathak
Vous pouvez (à partir de votre active virtual environment), procédez de la manière suivante
qui va automatiquement prendre soin de toutes les bibliothèques/modules disponibles dans votre projet.
Le prochain développeur n'aurait qu'à la question:
OriginalL'auteur hjpotter92
Si vous ne souhaitez afficher que les paquets que vous avez installé, puis tout simplement
pip freeze
.mais si vous voulez que tous ces paquets dans votre requirement.txt, puis faire
pip freeze > requirements.txt
OriginalL'auteur Deke