当我切换到目录时,我正在使用 direnv 来获取我的 virtualenv。
/project
.envrc
/env <--- my virtualenv
.envrc
source env/bin/activate
当我将目录更改为时,/project
我得到输出:
direnv: loading .envrc
direnv: export +VIRTUAL_ENV -PS2 ~PATH
它将 env 目录添加到我的 PATH 环境变量中,因此当我运行which python
并且which pip
都指向我env
目录中的 python 和 pip 时
=> which python
/USER/project/env/bin/python
=> which pip
/USER/project/env/bin/pip
然而,它似乎并没有source env/bin/activate
像我期望的那样运行。我希望它通过将 virtualenv 名称 (env) 添加到我的 CLI 提示符并授予对deactivate
命令的访问权限来激活我的 virtualenv,但这两种情况都不会发生。我对 direnv 和 virtualenv 的工作方式有什么误解吗?我是 python 新手,所以我不确定是否有现有的工具可以做这样的事情。