[PYTHON] Pipenv et Pipfile.lock

Je ne sais pas combien de temps il sera utilisé car c'est très à la mode, mais j'écrirai sur Pipenv https://github.com/pypa/pipenv. Pipenv est un outil comme npm, mais il utilise les fichiers de verrouillage un peu différemment, je vais donc l'écrire en premier.

Pipfile.lock

Dans Pipenv, le développeur écrit dans Pipfile la version qu'il souhaite installer et Pipfile.lock enregistre la version réellement installée. De cette manière, d'autres personnes peuvent reproduire le même environnement que celui installé par le développeur. Utilisez-le comme suit.

Si vous souhaitez reproduire le même environnement que la personne qui a créé Pipfile.lock. (npm ci en npm)

pipenv install

Ou la même chose se produit avec la synchronisation pipenv

Si vous souhaitez ignorer Pipfile.lock et installer les derniers packages répertoriés dans Pipfile. (npm install dans npm)

pipenv update

Continuez à écrire l'usage général.

Si vous avez également installé pyenv, pyenv sera appelé via pipenv et la version Python appropriée sera installée automatiquement.

Travail typique lors de la création d'un nouvel environnement pipenv par vous-même

Exemple d'installation (peut-être que l'installateur écrit ʻeval "$ (pyenv init-)" `dans .zshrc etc.):

brew install pipenv pyenv

Créez un nouvel environnement en spécifiant la version Python. Pyenv est requis pour l'installation automatique de Python.

pipenv --python 3.8

Entrez dans l'environnement

pipenv shell

Installez quelque chose pour l'implémentation. pipenv lock est également exécuté automatiquement et Pipfile.lock est mis à jour.

pipenv install boto3

Installez quelque chose pour le développement. pipenv lock est également exécuté automatiquement et Pipfile.lock est mis à jour.

pipenv install --dev autopep8

Répertorier les packages installés

pipenv graph

Vérifiez les dépendances telles que définies dans pep-508.

pipenv check

Trouvez un forfait périmé

pipenv update --outdated

Mettez à jour les anciens packages. Ignorez Pipfile.lock et regardez uniquement Pipfile pour mettre à jour le package. pipenv lock est également exécuté automatiquement et Pipfile.lock est mis à jour.

pipenv update

Mettez à jour Pipfile.lock vers la dernière version basée sur Pipfile, mais ne l'installez pas.

pipenv lock

Créez un environnement basé sur Pipfile.lock. Identique à pipenv install lorsque Pipfile.lock existe.

pipenv sync

Supprimer l'environnement

pipenv --rm

Participer au développement de code qui a déjà Pipfile et Pipfile.lock

Installez le package selon Pipfile.lock.

pipenv install

De côté

Il est facile de vérifier le fonctionnement si vous utilisez un package qui se met à jour rapidement, tel que boto3 https://pypi.org/project/boto3/.

Recommended Posts

Pipenv et Pipfile.lock
Pipenv
À propos de _ et __
Exécutez OpenVino sur macOS et environnement pyenv et pipenv