Как переименовать virtualenv в Python?

Я неправильно написал название virtualenv при инициализации так:

$ virtualenv vnev

Я на самом деле намеревался создать среду с именем venv. Попробовав переименовать до venv, Я считаю, что это не сильно поможет. Имя среды activate по-прежнему переименовывает старое vnev.

$ mv vnev venv
$ . venv/bin/activate
(vnev) $ deactivate

Я хотел бы знать, как идти о переименовании окружающей среды?

2 ответов


по умолчанию virtualenv не поддерживает переименование сред. Безопаснее просто удалить каталог virtualenv и создать новый с правильным именем. Вы можете сделать это:

  1. активировать virtualenv: source vnev/bin/activate
  2. создать требования.txt установленных пакетов:pip freeze > requirements.txt
  3. удалить virtualenv с ошибкой:rm -r vnev/
  4. создайте новый virtualenv с правильным именем: virtualenv venv
  5. активировать новый virtualenv:source venv/bin/activate
  6. установка пакетов из требований.txt:pip install -r requirements.txt

если воссоздание не является опцией, есть сторонние инструменты, такие как virtualenv-mv это может быть полезно.

в качестве альтернативы вы можете использовать virtualenvwrapper обеспечивает cpvirtualenv команда для копирования или переименования virtualenvs.


Если вы используете virtualenvwrapper Это можно сделать с помощью:

$ cpvirtualenv <wrong_name> <correct_name>
$ rmvirtualenv <wrong_name>