forked from varikin/pyenv
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move command reference to COMMANDS.md
- Loading branch information
Zearin
committed
Mar 20, 2014
1 parent
2613e84
commit 0933c40
Showing
2 changed files
with
249 additions
and
240 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,248 @@ | ||
# Command Reference | ||
|
||
Like `git`, the `pyenv` command delegates to subcommands based on its | ||
first argument. | ||
|
||
The most common subcommands are: | ||
|
||
* [pyenv local](#pyenv-local) | ||
* [pyenv global](#pyenv-global) | ||
* [pyenv shell](#pyenv-shell) | ||
* [pyenv versions](#pyenv-versions) | ||
* [pyenv version](#pyenv-version) | ||
* [pyenv rehash](#pyenv-rehash) | ||
* [pyenv which](#pyenv-which) | ||
* [pyenv whence](#pyenv-whence) | ||
|
||
|
||
|
||
## pyenv local | ||
|
||
Sets a local application-specific Python version by writing the version | ||
name to a `.python-version` file in the current directory. This version | ||
overrides the global version, and can be overridden itself by setting | ||
the `PYENV_VERSION` environment variable or with the `pyenv shell` | ||
command. | ||
|
||
$ pyenv local 2.7.6 | ||
|
||
When run without a version number, `pyenv local` reports the currently | ||
configured local version. You can also unset the local version: | ||
|
||
$ pyenv local --unset | ||
|
||
Previous versions of pyenv stored local version specifications in a | ||
file named `.pyenv-version`. For backwards compatibility, pyenv will | ||
read a local version specified in an `.pyenv-version` file, but a | ||
`.python-version` file in the same directory will take precedence. | ||
|
||
|
||
### pyenv local (advanced) | ||
|
||
You can specify multiple versions as local Python at once. | ||
|
||
Let's say if you have two versions of 2.7.6 and 3.3.3. If you prefer 2.7.6 over 3.3.3, | ||
|
||
$ pyenv local 2.7.6 3.3.3 | ||
$ pyenv versions | ||
system | ||
* 2.7.6 (set by /Users/yyuu/path/to/project/.python-version) | ||
* 3.3.3 (set by /Users/yyuu/path/to/project/.python-version) | ||
$ python --version | ||
Python 2.7.6 | ||
$ python2.7 --version | ||
Python 2.7.6 | ||
$ python3.3 --version | ||
Python 3.3.3 | ||
|
||
or, if you prefer 3.3.3 over 2.7.6, | ||
|
||
$ pyenv local 3.3.3 2.7.6 | ||
$ pyenv versions | ||
system | ||
* 2.7.6 (set by /Users/yyuu/path/to/project/.python-version) | ||
* 3.3.3 (set by /Users/yyuu/path/to/project/.python-version) | ||
venv27 | ||
$ python --version | ||
Python 3.3.3 | ||
$ python2.7 --version | ||
Python 2.7.6 | ||
$ python3.3 --version | ||
Python 3.3.3 | ||
|
||
|
||
## pyenv global | ||
|
||
Sets the global version of Python to be used in all shells by writing | ||
the version name to the `~/.pyenv/version` file. This version can be | ||
overridden by an application-specific `.python-version` file, or by | ||
setting the `PYENV_VERSION` environment variable. | ||
|
||
$ pyenv global 2.7.6 | ||
|
||
The special version name `system` tells pyenv to use the system Python | ||
(detected by searching your `$PATH`). | ||
|
||
When run without a version number, `pyenv global` reports the | ||
currently configured global version. | ||
|
||
|
||
### pyenv global (advanced) | ||
|
||
You can specify multiple versions as global Python at once. | ||
|
||
Let's say if you have two versions of 2.7.6 and 3.3.3. If you prefer 2.7.6 over 3.3.3, | ||
|
||
$ pyenv global 2.7.6 3.3.3 | ||
$ pyenv versions | ||
system | ||
* 2.7.6 (set by /Users/yyuu/.pyenv/version) | ||
* 3.3.3 (set by /Users/yyuu/.pyenv/version) | ||
$ python --version | ||
Python 2.7.6 | ||
$ python2.7 --version | ||
Python 2.7.6 | ||
$ python3.3 --version | ||
Python 3.3.3 | ||
|
||
or, if you prefer 3.3.3 over 2.7.6, | ||
|
||
$ pyenv global 3.3.3 2.7.6 | ||
$ pyenv versions | ||
system | ||
* 2.7.6 (set by /Users/yyuu/.pyenv/version) | ||
* 3.3.3 (set by /Users/yyuu/.pyenv/version) | ||
venv27 | ||
$ python --version | ||
Python 3.3.3 | ||
$ python2.7 --version | ||
Python 2.7.6 | ||
$ python3.3 --version | ||
Python 3.3.3 | ||
|
||
|
||
## pyenv shell | ||
|
||
Sets a shell-specific Python version by setting the `PYENV_VERSION` | ||
environment variable in your shell. This version overrides | ||
application-specific versions and the global version. | ||
|
||
$ pyenv shell pypy-2.2.1 | ||
|
||
When run without a version number, `pyenv shell` reports the current | ||
value of `PYENV_VERSION`. You can also unset the shell version: | ||
|
||
$ pyenv shell --unset | ||
|
||
Note that you'll need pyenv's shell integration enabled (step 3 of | ||
the installation instructions) in order to use this command. If you | ||
prefer not to use shell integration, you may simply set the | ||
`PYENV_VERSION` variable yourself: | ||
|
||
$ export PYENV_VERSION=pypy-2.2.1 | ||
|
||
|
||
### pyenv shell (advanced) | ||
|
||
You can specify multiple versions via `PYENV_VERSION` at once. | ||
|
||
Let's say if you have two versions of 2.7.6 and 3.3.3. If you prefer 2.7.6 over 3.3.3, | ||
|
||
$ pyenv shell 2.7.6 3.3.3 | ||
$ pyenv versions | ||
system | ||
* 2.7.6 (set by PYENV_VERSION environment variable) | ||
* 3.3.3 (set by PYENV_VERSION environment variable) | ||
$ python --version | ||
Python 2.7.6 | ||
$ python2.7 --version | ||
Python 2.7.6 | ||
$ python3.3 --version | ||
Python 3.3.3 | ||
|
||
or, if you prefer 3.3.3 over 2.7.6, | ||
|
||
$ pyenv shell 3.3.3 2.7.6 | ||
$ pyenv versions | ||
system | ||
* 2.7.6 (set by PYENV_VERSION environment variable) | ||
* 3.3.3 (set by PYENV_VERSION environment variable) | ||
venv27 | ||
$ python --version | ||
Python 3.3.3 | ||
$ python2.7 --version | ||
Python 2.7.6 | ||
$ python3.3 --version | ||
Python 3.3.3 | ||
|
||
|
||
## pyenv versions | ||
|
||
Lists all Python versions known to pyenv, and shows an asterisk next to | ||
the currently active version. | ||
|
||
$ pyenv versions | ||
2.5.6 | ||
2.6.8 | ||
* 2.7.6 (set by /home/yyuu/.pyenv/version) | ||
3.3.3 | ||
jython-2.5.3 | ||
pypy-2.2.1 | ||
|
||
|
||
## pyenv version | ||
|
||
Displays the currently active Python version, along with information on | ||
how it was set. | ||
|
||
$ pyenv version | ||
2.7.6 (set by /home/yyuu/.pyenv/version) | ||
|
||
|
||
## pyenv rehash | ||
|
||
Installs shims for all Python binaries known to pyenv (i.e., | ||
`~/.pyenv/versions/*/bin/*`). Run this command after you install a new | ||
version of Python, or install a package that provides binaries. | ||
|
||
$ pyenv rehash | ||
|
||
|
||
## pyenv which | ||
|
||
Displays the full path to the executable that pyenv will invoke when | ||
you run the given command. | ||
|
||
$ pyenv which python3.3 | ||
/home/yyuu/.pyenv/versions/3.3.3/bin/python3.3 | ||
|
||
|
||
## pyenv whence | ||
|
||
Lists all Python versions with the given command installed. | ||
|
||
$ pyenv whence 2to3 | ||
2.6.8 | ||
2.7.6 | ||
3.3.3 | ||
|
||
|
||
## pyenv install | ||
|
||
Part of [Python-build](https://github.com/yyuu/pyenv/tree/master/plugins/python-build), this installs versions of python | ||
|
||
$ pyenv install 2.7.6 | ||
$ pyenv install 2.6.8 | ||
$ pyenv versions | ||
system | ||
2.6.8 | ||
* 2.7.6 (set by /home/yyuu/.pyenv/version) | ||
|
||
|
||
## pyenv install --list | ||
|
||
List available remote versions of Python, including Anaconda, Jython, pypy, and stackless | ||
|
||
$ pyenv install --list | ||
|
||
|
Oops, something went wrong.