私はVirtualEnvWrapperを採用しています-そして私がよく見るものが好きです。ただし、作業を開始しようとすると、仮想環境とのプロジェクトディレクトリの関連付けを設定しようとしたときに期待する動作が表示されません。
virtualenvと-wrapperをインストールしました。私は環境を作成することができ、「workon」はそれらをうまくリストします。私はそれらを非アクティブ化して喜んでrmすることができます。したがって、すべてが機能しているように見えます。プロジェクト管理に関するドキュメントを読みました。(また、優れたビデオチュートリアル、および10:39に説明されている目的のプロジェクト関連付けの動作)
作業ディレクトリをenvに関連付けようとすると、cmdは正常に受け入れられますが、プロジェクトを「作業」すると、指定された作業ディレクトリに移動しません。
たとえば、作業領域〜/ Ross_codeがあります(これを.bashrcで$ PROJECT_HOMEとして設定しました)。既存のプロジェクトフォルダに〜/ Ross_code / superproj
だから今私は環境を作成します
mkvirtualenv superp
次に、既存のプロジェクトディレクトリに移動し、それをenvに関連付けます。
cd ~/Ross_code/superproj
setvirtualenvproject
Setting project for superp to /Users/ross/Ross_code/superproj
次に、「deactivate」で仮想環境を終了し、
workon superp
しかし、現在の作業ディレクトリは私の〜/フォルダのままです。
setvirtualenvprojectの呼び出しによって正しく設定されたと思われる.projectファイルを確認しました。
cdvirtualenv
more .project
/Users/ross/Ross_Code/superproj
しかし、「workon」と呼ぶことは、私を期待された場所にとどまらせることは決してありません。envとプロジェクトディレクトリは同じ名前である必要があるのではないかと思いましたが、それでも違いはありませんでした。
その非常に魅力的なプロジェクト関連付け機能が私にとって機能しない理由はありますか?
-ロス。
後で-詳細:mkprojectコマンドも使用しようとしました。このコマンドは、$ PROJECT_HOME領域にコード用のディレクトリを作成し、同時にvirtualenvを作成して、それらを相互に関連付けます。
呼び出し
mkproject junkproj
実際、プロジェクトディレクトリをうまく作成し、私をvirtualenvに固定し、cdをjunkprojディレクトリに固定します。しかし、非アクティブ化してから再び「workon junkproj」を実行すると、$ PROJECT_HOMEのプロジェクトディレクトリに移動するのではなく、〜/ディレクトリに残ります。
:(
ここでの問題は、virtualenvwrapperの新しいバージョン(これはubuntu 14.04から16.04にアップグレードすることになりました)がsetvirtualenvprojectパラメーターにわずかに異なるプロトコルを使用することです。
setvirtualenvproject [virtualenv_path project_path]
任意の仮想環境で必要な関連付けを行うには、プロジェクトフォルダーとvirtualenvに移動し、次を使用します。
setvirtualenvproject $VIRTUAL_ENV .
ドットは現在のディレクトリを表します。または、移動先のディレクトリのパスを使用できますworkon
。これを行うworkon
と、目的のフォルダに切り替わりcdproject
、期待どおりに機能します。
古いプロトコルを使用した場合.project
は、プロジェクトフォルダーにファイルがあります。新しいプロトコルでコマンドを呼び出して関連付けを行うのではなく、これを$ VIRTUAL_ENVフォルダーに移動できます。このファイルには、workon
やなどのvirtualenvwrapperショートカットコマンドに関連付けるプロジェクトディレクトリが含まれているだけですcdproject
。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加