Установка определенных версий пакета с помощью pip
Я пытаюсь установить версию 1.2.2 адаптера MySQL_python, используя свежий virtualenv, созданный с помощью . Текущая версия, показанная в PyPi, -1.2.3. Есть ли способ установить более старую версию? Я нашел статью, в которой говорилось, что это должно сделать:
pip install MySQL_python==1.2.2
при установке, однако, он по-прежнему показывает MySQL_python-1.2.3-py2.6.egg-информация в пакетах сайта. Это проблема, специфичная для этого пакета, или я делаю что-то неправильно?
6 ответов
во-первых, я вижу две проблемы с тем, что вы пытаетесь сделать. Поскольку у вас уже установлена версия, вы должны либо удалить текущий существующий драйвер, либо использовать pip install -I MySQL_python==1.2.2
однако, вы скоро узнаете, что это не работает. Если вы посмотрите на журнал установки pip, или если вы сделаете pip install -Iv MySQL_python==1.2.2
вы обнаружите, что ссылка URL PyPI не работает для MySQL_python v1.2.2. Вы можете проверить это здесь: http://pypi.python.org/pypi/MySQL-python/1.2.2
ссылка загрузки 404s и резервные ссылки URL перенаправляют бесконечно из-за sourceforge.net недавнее обновление и устаревший URL PyPI.
чтобы правильно установить драйвер, вы можете выполнить следующие действия:
pip uninstall MySQL_python
pip install -Iv http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.2/MySQL-python-1.2.2.tar.gz/download
один из способов, как полагают в этот пост отметить в версии pip
as
pip install -Iv MySQL_python==1.2.2
т. е. использовать ==
и укажите номер версии, чтобы установить только эту версию. -I, --ignore-installed
игнорирует уже установленные пакеты.
Я считаю, что если у вас уже установлен пакет, pip не будет перезаписывать его другой версией. Использовать -I
игнорировать предыдущие версии.
чтобы установить конкретную версию пакета python, будь то в первый раз, обновление или понижение:
pip install --force-reinstall MySQL_python==1.2.4
MySQL_python версии 1.2.2 недоступен, поэтому я использовал другую версию. Для просмотра всех доступных версий пакета из индекса исключите версию:
pip install MySQL_python==
поскольку это, по-видимому, было разрушительным изменением, введенным в версии 10 pip, я понизил до совместимой версии:
pip install 'pip<10'
эта команда сообщает pip установить версию модуля ниже версии 10. Сделайте это в virutalenv таким образом, вы не испортите установку Python на своем сайте.