дифференцировать mkvirtualenv и mkproject для virturalenvwrapper - PullRequest
4 голосов
/ 21 марта 2012

Я говорю о virtualenvwrapper Дуга Хеллмана . Что ж, по его словам, после установки virtualenvwrapper мы должны отредактировать файл .bashrc, как объяснено здесь

мы добавляем следующие три строки кода:

export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

где .virtualenv - каталог, в который будут помещены venvs. Devel - это каталог, в котором будет находиться код.

Наблюдение 1: когда я делаю mkvirtualenv proj1, то получается, что каталог с именем proj1 создается внутри .virtualenv, но НЕ внутри Devel.

Наблюдение 2: Когда я делаю mkproject proj1, создается каталог внутри .virtualenv, а также внутри Devel.

Теперь вопросы:

  1. Пожалуйста, объясните наблюдение 1 .

  2. Что если два проекта имеют одинаковые требования, и я хочу использовать один env и не хочу начинать с создания другого virtualenv и переустанавливать то же самое, что установлено. Как мне это сделать?

1 Ответ

4 голосов
/ 22 марта 2012
  1. Это ожидаемое поведение.Команда mkvirtualenv создает виртуальную среду, но не создает проект для вас.Некоторые люди занимаются веб-разработкой с Django, другие занимаются научным программированием на Python, поэтому для mkvirtualenv было бы слишком сложно что-то для вас настроить.Вы можете просто создать каталог самостоятельно, если вы начинаете новый проект.

  2. Если оба проекта находятся в разных каталогах, вы можете активировать виртуальную среду и затем перейти в любой каталог проекта,работать над этим.Затем вы также можете выполнить код каждого проекта, находясь в этой виртуальной среде.Таким образом, вам не нужно повторно переустанавливать требования в новой виртуальной среде.

...