Pipenv Cheatsheet
Introduction
Pipenv uses pip for package management and virtualenv for maintaining virtual environment under the hood. It works as a wrapper and uses same kind of syntax to make it easy to work.
You can more or less forget about using pip and virtualenv if you are using pipenv
.
pip install pipenv
Cheatsheet
Activate/Deactivate Environment
pipenv shell // Activate
exit // Deactivate
Locate environment
pipenv –venv // locates for a particular project
Delete environment
pipenv –rm // This will not remove the Pipfiles
Install/Uninstall/Update Packages
pipenv install flask // If virtual environment doesn’t exist, it’ll create it
pipenv install flask==0.12.1 // Installs specific version
pipenv install pytest –dev // To separate dev packages from production environment
pipenv uninstall flask // Uninstalls package
pipenv uninstall –all // Uninstalls all packages
pipenv uninstall –all-dev // Uninstalls all dev packages
pipenv update package_name // Update specific package
pipenv update // Updates all packages
Create/Update the lock file
pipenv lock // Done usually before pushing the code
To install from Pipfile
pipenv install –dev // installs from pipfile along with dev pacakges; creates environment if not present; updates packages if version not mentioned
pipenv install // doesn’t install dev packages; creates environment if not present; updates packages if version not mentioned
pipenv install –ignore-pipfile // installs from lock file; ccreates environment if not present; updates packages if version not mentioned
Extra Features
Install/Export requirements.txt
pipenv install -r requirements.txt // installs a list of requirements
pipenv lock -r > requirements.txt // export a list of requirements
Create environment with specific python version
pipenv shell –python 3.5 // will use python 3.5 now
Open Third Party Package
pipenv open requests // opens code in default editor; to open in vscode use environment variable EDITOR=code
Run in Environment without opening Shell
pipenv run
Check Security Vulnerabilities
pipenv check
List Packages and their Dependencies
pipenv graph
// to resolve conflicting sub-dependencies use pipenv graph --reverse