Pipenv環境を無効にするにはどうすればよいですか?
他のツールを使用すると、source deactivate
、しかし、それはここでは影響しません。
環境を作成します。
pipenv --three
環境をアクティブにします。
source $(pipenv --venv)/bin/activate
しかし、無効にする方法は?
ウィリアムズの答えをもう少し詳しく述べると、 予想されるワークフロー はpipenv Shell
を使用してvirtualenvに入ることです。この方法でvirtualenvをアクティブにすると、コンソール出力はexit
を使用するようになります:
スポーン環境シェル(/ bin/zsh)。終了するには「exit」を使用します。
deactivate
を使用してvirtualenvを終了しようとすると、pipenvは混乱した状態のままになります。これは、起動されたシェルインスタンスにいるのに、アクティブ化されたvirtualenvにいないためです。
シェルコマンドexit
も使用できます。
deactivate
を使用すると、エラーが残ります。
Shell for UNKNOWN_VIRTUAL_ENVIRONMENT already activated.
No action taken to avoid nested environments.
exit
を使用した後、pipenv
インスタンスを正常に切り替えることができました。これはバグである可能性が高いため、おそらく報告する必要があります。
最初に「非アクティブ化」してから「終了」すると、仮想環境から抜け出します。今のところ、これは私のために働いた。
投稿者 の観点からの回答については、このトピックを確認してください。
https://github.com/pypa/pipenv/issues/84#issuecomment-27505694
ネタバレ :
pipenvは、現在のシェルセッションのパスを変更する代わりに、virtualenvパスで新しいシェルセッションを開始します。そのため、非アクティブ化が機能しません。シェルセッションを終了する必要があります。 exitコマンドまたはCTRL-dがトリックを行います。