virtualenvwrapper is a set of extensions to Ian Bicking's virtualenv tool. The extensions include wrappers for creating and deleting virtual environments and otherwise managing your development workflow, making it easier to work on more than one project at a time without introducing conflicts in their dependencies.
Warning: The 4.x release includes some potentially incompatible
changes for extensions from 3.x. The python modules for extensions are
now always run with
PWD=$WORKON_HOME (previously the value of
PWD varied depending on the hook). The shell portion of any hook
(anything sourced by the user's shell when the hook is run) is still
run in the same place as before.
My Fork's Features
- Support to remove several envs at once:
rmvirtualenv e1 e2...
- Create new env using workon:
workon env --createor
workon env -c
lsvirtualenvwith brief option as default
- Organizes all of your virtual environments in one place.
- Wrappers for creating, copying and deleting environments, including user-configurable hooks.
- Use a single command to switch between environments.
- Tab completion for commands that take a virtual environment as argument.
- User-configurable hooks for all operations.
- Plugin system for more creating sharable extensions.
Rich Leland has created a short screencast showing off the features of virtualenvwrapper.
See the project documentation for installation and setup instructions.
virtualenvwrapper is a set of shell functions defined in Bourne
shell compatible syntax. It is tested under
It may work with other shells, so if you find that it does work with a
shell not listed here please let me know. If you can modify it to
work with another shell, without completely rewriting it, send a pull
request through the bitbucket project page. If you write a clone to
work with an incompatible shell, let me know and I will link to it
from this page.
virtualenvwrapper is tested under Python 2.6 - 3.3.
Join the virtualenvwrapper Google Group to discuss issues and features.
Report bugs via the bug tracker on BitBucket.
Since virtualenvwrapper is largely a shell script, it uses shell commands for a lot of its actions. If your environment makes heavy use of shell aliases or other customizations, you may encounter issues. Before reporting bugs in the bug tracker, please test without your aliases enabled. If you can identify the alias causing the problem, that will help make virtualenvwrapper more robust.
The release history is part of the project documentation.
Copyright Doug Hellmann, All Rights Reserved
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Doug Hellmann not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission.
DOUG HELLMANN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DOUG HELLMANN BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.