2013-05-31 3 views
0

Я работаю в виртуальной среде python (с virtualenvwrapper). Я создал ветвь моего кода, и я хотел отредактировать его в другом virtualenv. Я определяю путь к моей папке django src (и еще нескольким вещам) в скрипте postactivate.pip хочет удалить пакеты сайтов из другой виртуальной среды

Я сделал $ cpvirtualenv ~/.virtualenv/v1 ~/.virtualenv/v2 был успешно скопирован.

Я тогда workon v2 и хотел pip uninstall PIL. Я получаю следующее сообщение об ошибке:

Not uninstalling PIL at /home/myuser/.virtualenv/v1/lib/python2.7/site-packages/PIL, outside environment /home/myuser/.virtualenv/v2 

Я также попытался ее от ~/.virtualenv/v2

Я не хочу, чтобы удалить PIL от v1, но от v2. Я также попробовал virtualenv-clone, и я не понимаю, что происходит. Я всегда могу создать новый virtualenv, скопировать сценарий postactivate и pip -r install requirements.txt, но я хотел бы понять ошибку, которую я получил.

ответ

1

Отрывок из док:

Copying virtual environments is not well supported. Each virtualenv has path information hard-coded into it, and there may be cases where the copy code does not know to update a particular file. Use with caution.

+0

согласен. Вы должны устанавливать из 'requirements.txt' каждый раз, когда вы создаете новый env, а не копируете его. – boldnik

+0

Я вижу! Благодарю. В конце концов, я все равно делал это с требованиями. Txt. –