如何在诗歌中创造全新的虚拟环境或复制现有的虚拟环境? (一个项目中的多个环境)
How to create a brand new virtual environment or duplicate an existing one in poetry? (Multiple environment in a project)
我有一个项目和一个用诗歌创建的现有虚拟环境(诗歌install/init)。
因此,据我所知,虚拟环境的目的是避免修改系统基础环境和隔离的可能性(每个项目、每个开发、每个系统等...)。
如何为我的诗歌项目创造另一个全新的环境?我怎样才能最终复制并使用现有的?
我的意思是当前的(激活的)不应该参与这个(除了最终复制它)因为我想测试另一组依赖项和代码。
我知道这一点:
- https://github.com/python-poetry/poetry/issues/4055(答案不明确,工单未关闭)
- https://python-poetry.org/docs/managing-environments/(使用命令似乎无法按要求的方式工作)
诗歌似乎 每个 python 解释器 绑定到一个 virtualenv。
诗歌也绑定到pyproject.toml文件及其路径生成新环境
所以有 2 个棘手的解决方案:
1 - 在 pyproject.toml 和 中更改你的 deps 使用另一个 python 版本 (例如使用 pyenv 安装)然后:
poetry env use X.Y
poetry 将创建一个新的虚拟环境,但这与仅更改一些项目部门并不完全相同。
2 - 使用来自另一路径的另一个 pyproject.toml:
mkdir env_test
cp pyproject.toml env_test/pyproject.toml
cd env_test
nano pyproject.toml # edit your dependencies
poetry install # creates a brand new virtual environment
poetry shell
# run your script with the new environment
这将生成一个新环境,其中仅更改了要求的依赖项。两种环境可以同时使用。
经过测试,终于可以用env命令删除新环境了
我有一个项目和一个用诗歌创建的现有虚拟环境(诗歌install/init)。 因此,据我所知,虚拟环境的目的是避免修改系统基础环境和隔离的可能性(每个项目、每个开发、每个系统等...)。
如何为我的诗歌项目创造另一个全新的环境?我怎样才能最终复制并使用现有的?
我的意思是当前的(激活的)不应该参与这个(除了最终复制它)因为我想测试另一组依赖项和代码。
我知道这一点:
- https://github.com/python-poetry/poetry/issues/4055(答案不明确,工单未关闭)
- https://python-poetry.org/docs/managing-environments/(使用命令似乎无法按要求的方式工作)
诗歌似乎 每个 python 解释器 绑定到一个 virtualenv。 诗歌也绑定到pyproject.toml文件及其路径生成新环境
所以有 2 个棘手的解决方案:
1 - 在 pyproject.toml 和 中更改你的 deps 使用另一个 python 版本 (例如使用 pyenv 安装)然后:
poetry env use X.Y
poetry 将创建一个新的虚拟环境,但这与仅更改一些项目部门并不完全相同。
2 - 使用来自另一路径的另一个 pyproject.toml:
mkdir env_test
cp pyproject.toml env_test/pyproject.toml
cd env_test
nano pyproject.toml # edit your dependencies
poetry install # creates a brand new virtual environment
poetry shell
# run your script with the new environment
这将生成一个新环境,其中仅更改了要求的依赖项。两种环境可以同时使用。 经过测试,终于可以用env命令删除新环境了