django開発環境導入(二)-pythonバージョンコントローラpyenv


pythonバージョンコントローラpyenv
以前の記事ではdjango環境のsite packageが完全に独立していることを説明していましたが、使用しているpython解釈器はまだシステムで、独立を続けるためにrubyのrvmの自由切替解釈器バージョンに達するまで、それはもっとよくありません.後でpythonバージョンをオンラインでアップグレードするときに直接ローカル切替バージョンで現在のコードテストを実行するのは速くありません.実は本編ではdjango開発環境とは言えませんpython開発環境の導入です
前編を踏まえて、引き続きインタプリタのバージョンマネージャのインストールを行います.ここで私が使用しているのはpyenv、もう1つのマネージャはpythonbrew、もう1つのpythonzです.なぜpyenvを選んだのか、pythonbrewのGitHubのホームページでは次のように説明しています.
英語の翻訳のレベルがひどくて,原文を運ぶしかない.
DeprecatedThis project is no longer under active development.You are encouraged to try out pyenv instead.
なぜpyenvを選んだのか
  • Depend on Python itself. pyenv was made from pure shell scripts. There is no bootstrap problem of Python.
  • Need to be loaded into your shell. Instead, pyenv's shim approach works by adding a directory to your $PATH.
  • Manage virtualenv. Of course, you can create virtualenv yourself, or pyenv-virtualenv to automate the process.

  • このプロジェクトはpythonbrew、GitHubのホームページに徐々に取って代わっています.https://github.com/yyuu/pyenv
    Step 1:概要
    pyenv lets you easily switch between multiple versions of Python. It's simple, unobtrusive, and follows the UNIX tradition of single-purpose tools that do one thing well.This project was forked from rbenv and ruby-build, and modified for Python.
    Step 2:機能
  • Let you change the global Python version on a per-user basis.
  • Provide support for per-project Python versions.
  • Allow you to override the Python version with an environment variable.
  • Search commands from multiple versions of Python at a time. This may be helpful to test across Python versions with tox.

  • Step 3:インストール
    GitHubベースのインストール
    This will get you going with the latest version of pyenv and make it easy to fork and contribute any changes back upstream.
    1、倉庫のクローン作成
    $ cd 
    $ git clone git://github.com/yyuu/pyenv.git .pyenv

    2、環境変数を示す
    $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile 
    $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

    3、shims and autocompletionを開く
    $ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

    4、shellを再起動して有効にする
    $ exec $SHELL

    5、これで別バージョンのpythonをインストールできます
    #    $PYENV_ROOT/versions        
    $ pyenv install 2.7.6

    6、shimを再構築し、pyenvで新バージョンをインストールしたpyも、新しいsite packageをインストールした後も、この操作を実行する必要があります.
    $ pyenv rehash

    7、pyenvのアップグレード
    #       $ cd ~/.pyenv $ git pull 
    # $ cd ~/.pyenv $ git fetch
    $ git tag v0.1.0
    $ git checkout v0.1.0

    8、指定pyバージョンのアンインストール
        
    cd ~/.pyenv/versions
    pyenv uninstall


    rm -rf $pyversion

    macプラットフォームなら
    $ brew update 
    $ brew install pyenv //
    $ brew upgrade pyenv //

    #
    $ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile //

    Step 4:使用
    公式usageページ
    $ pyenv commands //          
    $ pyenv install 3.4.0
    $ pyenv version // python version
    $ pyenv versions // pyenv , site package
    $ pyenv which python3.4 // python version
    $ pyenv whence 2to3 // pyenv python version
    $ pyenv install --list // python version,pypy
    $ pyenv rehash //Run this command after you install a new version of Python, or install a package that provides binaries.
    $ pyenv uninstall //

    # pyenv local pyenv global

    Step 5:virtualenvの統合
    このpyenvはvirtualenvを統合するためにプラグインを設計し、virtualenvwrapperを人間的に発売した.
    1、インストール
    $ git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv 
    $ exec "$SHELL" # ~/.pyenv/plugins/pyenv-virtualenv

    #mac
    $ brew install pyenv-virtualenv

    2、使用$ pyenv virtualenv 2.7.6 venv-2.7.6 // 2.7.6 my-virtual-env-2.7.6 , ~/.pyenv/versions
    $ pyenv virtualenv 3.4.0 venv-django1.6-3.4.0 // 3.4 ,

    # pyenv , ,
    $ pyenv virtualenv django1.6 // python version , , pyenv

    # , pyenv
    $ pyenv activate venv33

    #
    $ pyenv deactivate
    \\ deactivate, deactivate pyenv local ,
    pyevnのshell,local,globalについては、単独で説明を書きます