我刚开始使用 pyenv 来管理我的 python 版本,并开始使用 pyenv virtualenv 插件来管理我的 virtualenvs,到目前为止,我很喜欢它。然而,我想念的一件事是,使用 virtualenv,您实际上可以将虚拟环境放置在存储库目录中,以便您的存储库是一个完全可重现的环境。有谁知道在 pyenv 中选择 virtualenv 目录的方法吗?
原文由 ericmarkmartin 发布,翻译遵循 CC BY-SA 4.0 许可协议
我刚开始使用 pyenv 来管理我的 python 版本,并开始使用 pyenv virtualenv 插件来管理我的 virtualenvs,到目前为止,我很喜欢它。然而,我想念的一件事是,使用 virtualenv,您实际上可以将虚拟环境放置在存储库目录中,以便您的存储库是一个完全可重现的环境。有谁知道在 pyenv 中选择 virtualenv 目录的方法吗?
原文由 ericmarkmartin 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是项目跟踪器上的 GitHub 问题,询问这个问题: https ://github.com/pyenv/pyenv/issues/802
您可以在任何位置创建 virtualenv。要从 pyenv 使用它,请在 ~/.pyenv/versions 中创建指向环境的符号链接
尽管我必须说我 对这个解决方案不是很满意。
原文由 Ciro Santilli OurBigBook.com 发布,翻译遵循 CC BY-SA 4.0 许可协议
简短的回答:据我所知,你不能。
它也不会真的起作用,对吧?如果您使用
pyenv virtualenv
将 virtualenv 安装到存储库中,然后将该存储库克隆到另一台机器上……新机器上的pyenv
如何知道控制存储库中的 virtualenv ?此外,“你可能不应该那样做”。 Virtualenvs 并没有 100% 与底层 Python 安装分离,也不是真正的可移植。你真的想用一堆容易复制的垃圾来乱丢你的存储库吗?处理事情的“正确”方法可能是为 pip 维护一个
requirements.txt
这样你就可以在克隆你的 repo 的任何地方轻松地重现你的开发环境。_综上所述_,没有什么能阻止你使用普通的旧
virtualenv
在你喜欢的任何地方创建一个 virtualenv,即使你安装了virtualenv
到pyenv
下的 Python 解释器中控制。该 virtualenv 本身当然 不会 由pyenv
管理,但您仍然可以像往常一样使用它……