Нужно ли обновлять pip-файл вручную каждый раз, когда я устанавливаю что-то для своего проекта?Я думал, что pip-файл будет заботиться об этом автоматически каждый раз, когда я что-то устанавливаю.
requirements.txt
- это просто файл.Вокруг этого нет логики, которая обновляет это (если, конечно, у вас нет IDE, которая делает это).По сути, это не тот файл, который используется для менеджера пакетов.Вы можете использовать любой файл и несколько файлов (например, иногда создается файл requirements_test.txt
, содержащий дополнительные пакеты, которые должны быть установлены при тестировании программного обеспечения).
YouСамо по себе нет необходимости обновлять файл requirements.txt
при каждой установке программного обеспечения, если файл requirements.txt
правильный при развертывании программного обеспечения (на другом компьютере), это нормально.
Вы можетеоднако автоматизировать это в некоторой степени.Например, если вы используете git
subversioning, вы можете создать pre-commit
ловушку, которая будет запускаться каждый раз, когда вы фиксируете изменения.Например, путем создания исполняемого файла в .git/hooks/pre-commit
в хранилище.Нечто похожее:
#!/bin/bash
. env/bin/activate
pip freeze > requirements.txt
Каждый раз, когда вы делаете коммит, requirements.txt
будет "гармонизирован" с пакетами, установленными в виртуальной среде.