假设我的项目名称是test
符号链接test
-->test_releases/test_v1
cd test
pipenv shell
上面的命令给了我一个test_v1
目录的虚拟环境,但我想把 virtualenv 链接到test
bcoz wehn 我更新了项目并有符号链接test
--> test_releases/test_v2
,它创建了一个新的test_v2
并且我有很多虚拟环境堆积
至少在最新版本中,似乎可以通过使用VIRTUAL_ENV
环境变量来执行此操作:
export VIRTUAL_ENV=/path/to/your/venv
pipenv shell
在上面的示例中:
创建物理目录test
并pipenv install
从那里运行以创建与该test
目录链接的 venv。让我们假设(例如,为了)它是在其中创建的/home/user/.local/share/virtualenvs/test-nRgTMf73
(显然您的哈希很可能会有所不同)
删除物理目录并创建一个符号链接,例如test --> test_releases/test_v1
cd
进入test
现在并运行:
export VIRTUAL_ENV=/root/.local/share/virtualenvs/OfflineSystem-nRgTMf73
pipenv shell
这将使用原始 venv 而不管符号链接的物理目标(即test --> test_releases/test_v2
等)
没有这样的选项可用,我做了一个 pipenv 的分支并添加了我的自定义环境变量以获得所需的结果