Я уже использовал pip и virtualenv (и на самом деле иногда все еще предпочитаю хорошо организованную комбинацию через репозиторий SVN, разумное использование svn:externals и динамический sys.path).
Но на этот раз для установки нового сервера я хотел бы сделать все правильно.
Итак, я перехожу на страницу установки pip, и там написано:
Рекомендуемый способ использования pip — внутри virtualenv, так как в каждом virtualenv pip устанавливается автоматически. Это не требует root-доступа или изменения вашей системной установки Python. [...]
Затем я перехожу на страницу установки virtualenv, и там предлагается:
Вы можете установить virtualenv с помощью pip install virtualenv или последнюю разрабатываемую версию с помощью pip install virtualenv==dev. Вы также можете использовать easy_install [...]
И, конечно же, pip должен заменить easy_install :)
Конечно, они оба объясняют все альтернативные способы установки.
Но... кто должен идти первым? И должен ли я поддерживать общесистемный пункт или нет?
Я вижу основной повод задуматься, но могут быть и другие
Если я хочу, чтобы виртуальная среда была доступна всем, я мог бы просто установить общесистемный pip (например, с Ubuntu do sudo aptitude install python-pip
, а затем использовать его для установки virtualenv sudo pip установить virtualenv
).
editеще одна причина для размышлений: virtualenvwrapperинструкции по установке (но не документы) говорят:
Примечание. Чтобы использовать virtualenvwrapper, вы должны установить virtualenv отдельно .
Не совсем уверен, что здесь имеется в виду под словом «отдельно» (я никогда не замечал).
В противном случае, какой из них должен идти первым, и действительно ли это имеет значение или нет?
Наиболее близким вопросом (и ответами) является первый из следующих (в частности, см. ответ @elarson), второй выглядит слишком сложным:
но я чувствую, что все это не дает полного ответа на мой вопрос: общесистемный или локальный, но также должен ли pip или virtualenv идти первым (и почему они сначала отправляют друг другу!!!)