Как заставить pip переустановить текущую версию?
Я столкнулся с ситуацией, когда текущая версия пакета, казалось бы, не работает и требует переустановки. Однако команда pip install -U
не затрагивает пакет, который уже обновлен до актуальной версии. Я понимаю, как можно принудительно переустановить пакет, предварительно удалив его с помощью pip uninstall
, а затем установив снова, но есть ли способ просто принудительно «обновить» пакет до номинально актуальной версии в одном шаге?
5 ответ(ов)
Команда pip install --upgrade --force-reinstall <package>
позволяет обновить указанный пакет и принудительно переустановить его, даже если он уже обновлён до последней версии. Это может быть полезно в ситуациях, когда вам нужно убедиться, что пакет установлен правильно или если необходимо восстановить его после повреждения.
Также существуют альтернативные команды, которые игнорируют уже установленные версии пакета. Используя pip install -I <package>
, вы можете переустановить пакет, игнорируя его текущее состояние. Команда pip install --ignore-installed <package>
достигает того же результата, принудительно переустанавливая пакет, несмотря на его наличие в системе.
Таким образом, если вам нужно переустановить пакет независимо от его текущих установленных версий, вы можете воспользоваться любой из указанных команд.
Вам, возможно, будет полезно использовать все три опции: --upgrade
и --force-reinstall
гарантируют переустановку, в то время как --no-deps
предотвращает переустановку зависимостей.
$ sudo pip install --upgrade --no-deps --force-reinstall <имя_пакета>
В противном случае вы можете столкнуться с проблемой, что pip начнет перекомпиляцию Numpy или других крупных пакетов.
Чтобы переустановить пакеты, указанные в файле requirements.txt
, без обновления до более новых версий, вы можете использовать следующую команду:
pip install -r requirements.txt --ignore-installed
Опция --ignore-installed
позволяет переустановить пакеты, игнорируя ранее установленные версии, что обеспечит установку именно тех версий, которые указаны в вашем requirements.txt
.
Команда --upgrade --force-reinstall
не заставляет pip переустанавливать пакет при использовании Python 2.7 и pip 1.5. Вместо этого вы можете воспользоваться следующей комбинацией флагов:
--no-deps --ignore-installed
Эти параметры позволят вам принудительно переустановить пакет, игнорируя уже установленные зависимости. Таким образом, вы сможете добиться желаемого результата.
Если вам необходимо принудительно переустановить сам pip, вы можете выполнить следующую команду:
python -m pip install --upgrade --force-reinstall pip
Эта команда обновит и переустановит pip в вашей среде.
Как удалить все пакеты, установленные через pip?
Как обновить pip изнутри виртуального окружения?
Как установить pip на macOS или OS X?
Узнать, какая версия пакета установлена с помощью pip
Ошибка EnvironmentError: не найден mysql_config при установке mysql-python с помощью pip