How to freeze packages installed only in the virtual environment?
Question:
How to freeze packages installed only in the virtual environment, that is, without the global ones?
Answers:
Install whatever you need to freeze in your virtual environment, and then
pip freeze > requirements.txt
After that install the packages in the virtual environment that you do not want to freeze.
Try the following command:
pip -E /path/to/env/ freeze
You need to use the -l
or --local
option to freeze only the local packages (and not the global ones)
pip freeze -l > requirements.txt
Make sure you are working in the virtualenv
before doing pip freeze -l
.
Only local packages on virtual environment
pip freeze -l > requirements.txt # or --local instead of -l
Only local packages installed by the user on virtual environment
pip freeze --user > requirements.txt
See the documentation for further details: https://pip.pypa.io/en/stable/reference/pip_freeze/.
python venv/Path_to/bin/pip freeze -l
I’m on Windows 10, python 3.6, with my virtual environment called env activated using command prompt I found that pip freeze -l
does not work (error), python -m pip freeze -l
does not work (gets global packages) but changing into my virtual environment Scripts directory and running pip freeze
or pip freeze -l
works. Here is an example of this solution/work-around with my virtual environment, env:
cd envScripts
pip freeze > ....requirements.txt
For me (macOS) the following worked
path/to/venv/bin/pip3 freeze -l
I did try everything, even i inside venv it not worked. This code worked for me. It shows only pip packages in venv.
venvScriptspython.exe venvScriptspip.exe freeze > requirements.txt
How to freeze packages installed only in the virtual environment, that is, without the global ones?
Install whatever you need to freeze in your virtual environment, and then
pip freeze > requirements.txt
After that install the packages in the virtual environment that you do not want to freeze.
Try the following command:
pip -E /path/to/env/ freeze
You need to use the -l
or --local
option to freeze only the local packages (and not the global ones)
pip freeze -l > requirements.txt
Make sure you are working in the virtualenv
before doing pip freeze -l
.
Only local packages on virtual environment
pip freeze -l > requirements.txt # or --local instead of -l
Only local packages installed by the user on virtual environment
pip freeze --user > requirements.txt
See the documentation for further details: https://pip.pypa.io/en/stable/reference/pip_freeze/.
python venv/Path_to/bin/pip freeze -l
I’m on Windows 10, python 3.6, with my virtual environment called env activated using command prompt I found that pip freeze -l
does not work (error), python -m pip freeze -l
does not work (gets global packages) but changing into my virtual environment Scripts directory and running pip freeze
or pip freeze -l
works. Here is an example of this solution/work-around with my virtual environment, env:
cd envScripts
pip freeze > ....requirements.txt
For me (macOS) the following worked
path/to/venv/bin/pip3 freeze -l
I did try everything, even i inside venv it not worked. This code worked for me. It shows only pip packages in venv.
venvScriptspython.exe venvScriptspip.exe freeze > requirements.txt