Установка определенных версий пакетов с помощью 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.яйцо-информация в пакетах сайта. Это проблема, специфичная для этого пакета, или я делаю что-то неправильно?

6 886

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 Как

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.