Requirements.txt - как получить?
Как получить requirements.txt, имея django проект?
Как получить requirements.txt, имея django проект?
С помощью команды:
pip freeze
Чтобы получить список пакетов в проекте выполняем команду
pip freeze
Для записи вывода в requirements.txt дополняем следующим образом:
pip freeze > requirements.txt
Команду выполняем в корне проекта. Там же появится и файл. Подразумевается использование активного venv для текущего проекта. При выполнении вне виртуальной среды текущего проекта могут быть подтянуты лишние пакеты, не связанные с текущим проектом!
Лучше всего смотреть в INSTALLED_APPS и выковыривать всё вручную. С pip freeze
есть вариант получить тыкву через некоторое время, ибо он вытягивает абсолютно все пакеты вместе с их зависимостями (включая системные), а пакеты со временем обновляются, старые версии удаляются. Да и нечего вам рулить зависимостями вручную - это задача менеджера пакетов (pip или easy_install).
Лучше всего заполнять файл requirements по мере написания проекта, а не после.
Добавлено: Есть подходящая опция у pip: pip freeze --local
.
Из справки: If in a virtualenv that has global access, do not output globally-installed packages.
Чтобы создать requirements.txt
или обновить уже существующий файл, чтобы он соответствовал текущему virtualenv, можно использовать pip-dump
команду:
$ pip install pip-tools
$ pip-dump
Если вы работаете в PyCharm, то можно сформировать requirements.txt на основе текущего проекта: https://www.jetbrains.com/help/pycharm/managing-dependencies.html. Удобно, так как добавляются только пакеты которые используются в проекте. Может быть аналогичный инструмент в другой используемой IDE.
Для работы с requirements.txt есть Python библиотека pipreqs
Установка: pip install pipreqs
pipreqs /path/to/project/folder
—force
—print
Подробнее здесь