python-3.x 停用pipenv环境

wfauudbj  于 2023-05-02  发布在  Python
关注(0)|答案(8)|浏览(253)

如何停用pipenv环境?
使用其他工具,我已经能够做一些像source deactivate,但没有影响这里。
创建一个环境:

pipenv --three

激活环境:

source $(pipenv --venv)/bin/activate

但如何解除?

643ylb08

643ylb081#

为了更详细地阐述威廉姆斯的答案,预期的工作流程是使用pipenv shell进入virtualenv。当您以这种方式激活virtualenv时,控制台输出现在指示使用exit
生成环境shell(/bin/zsh)。使用“退出”离开。
尝试使用deactivate退出virtualenv会使pipenv处于混乱状态,因为您仍然处于生成的shell示例中,而不是处于激活的virtualenv中。

thigvfpy

thigvfpy2#

使用shell命令exit也可以。
当我使用deactivate时,这对我很有效,但仍然给我留下了错误:

Shell for UNKNOWN_VIRTUAL_ENVIRONMENT already activated.
No action taken to avoid nested environments.

使用exit后,我可以成功切换pipenv示例。这很可能是一个bug,我应该报告它。

pwuypxnk

pwuypxnk3#

更新:请参阅下面的其他答案。正如已经解释的那样,这适用于virtualenv,但pipenv的工作方式不同。

只需在命令行中键入deactivate即可。参见指南here

x4shl7ld

x4shl7ld4#

只要输入“退出”,它会带你出壳。
如果您使用“deactivate”,那么当您再次尝试进入shell时,可能会出现此错误。

Shell for UNKNOWN_VIRTUAL_ENVIRONMENT already activated.
    No action taken to avoid nested environments.

因此,为了快速访问,更喜欢使用“退出”。

8tntrjer

8tntrjer5#

从pipenv虚拟环境中取消激活,您可以简单地运行以下命令。

deactivate
2ic8powd

2ic8powd6#

请从contributor的Angular 检查此主题的答案:
https://github.com/pypa/pipenv/issues/84#issuecomment-275056943
剧透:
pipenv使用virtualenv路径启动新的shell会话,而不是更改当前shell会话中的路径。这就是为什么停用不起作用。您需要退出shell会话。exit命令或CTRL-d将完成此任务。

x3naxklr

x3naxklr7#

首先“deactivate”,然后“exit”,您将退出虚拟环境。到目前为止,这对我很有效。

h7wcgrx3

h7wcgrx38#

如果您使用pipenv shell来激活虚拟环境,并且exitdeactivate不起作用。右键单击并杀死终端。那对我很有效

相关问题