从 pyenv-virtualenv 切换到 pipelinev 时保持相同的共享 virtualenv

2023-11-25

我开始看pipenv看起来还不错。我唯一担心的是,我的大部分项目都涉及numpy, scipy和其他一些不那么小的图书馆。

目前管理我的项目的方式: I have pyenv and pyenv-virtualenv安装。我有一些(目前是 4 个)具体的virtualenvs每个都迎合一个type的项目。项目本身有.pyenv-version设置,我有自动加载 virtualenv 功能pyenv已启用。如果我需要共享一个项目,我会生成一个requirements.txt with pip freeze -l来自virtualenv.

所以在我当前的设置中,我有X项目数量和Y, Y << X数量virtualenvs,总共需要几 GB 的硬盘空间。请注意,由于像这样的大型库numpy每一个virtualenvs相当大,大约 700-900 MB。

我的问题:

据我所理解,pipenv默认情况下会创建一个virtualenv对于我的所有项目,我的硬盘空间占用了吗?virtualenvs会大幅增加。我感兴趣的是:

  • 可以分享吗pipenv跨多个项目的环境,使用exactly相同的依赖关系?即多个pipenv加载相同的配置virtualenv?
  • 如果没有,是否可以生成pipenv配置文件来自virtualenv我设置了pyenv?即我不会使用pipenv为了实际运行我的项目,我不会创建任何virtualenvs with pipenv,但我会创建pipenv用于共享项目的配置文件(在本例中,可能与requirements.txt以及)。

edit: 我重写了大部分问题以使其更清楚。


pipenv似乎不太适合您的特定工作流程,因为它以项目为中心而不是以环境为中心。 pipenv将虚拟环境视为不稳定的环境,并保留在情况需要时自由更改其的权利。您可以使用它,但在环境发生变化的情况下,保持所有项目同步将是一件很痛苦的事情,因为pipenv'是严格审查。

You can显式指定虚拟环境pipenv用于项目通过创建一个.venv项目根目录中的文件及其路径(通常,virtualenvs 是在特定位置创建的,具有自动生成的名称,其中包含项目路径的哈希值)。这似乎没有记录。

然而,pipenv,不像virtualenv,检查并强制虚拟环境具有满足条件的确切模块集Pipfile以及生成的文件中指定的确切“最后测试的配置”Pipfile.lock.

  • 此外,如果你生成Pipfile from requirements.txt,它将指定确切的包版本并包括所有依赖项 -而根据设计,它应该包含更多智能信息。

因此,如果您更改环境中的任何软件包版本,您将需要:

  • 全部更新Pipfile.lock受影响的项目中的 s(例如复制更改的项目)。随着生成的Pipfile,您可能会删除它们。
  • 全部更新Pipfile如果有更改,则将受影响的项目中的 s 更改为新的软件包版本(例如,复制更改的版本)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 pyenv-virtualenv 切换到 pipelinev 时保持相同的共享 virtualenv 的相关文章

随机推荐

  • 为需要另一个扩展的 Python 进行 C 扩展

    我有几个 Python 函数 可以用来让 Pygame 的游戏开发变得更容易 我将它们放在 Python 路径中名为 helper py 的文件中 这样我就可以从我制作的任何游戏中导入它们 我想 作为学习 Python 扩展的练习 将此模块
  • 使用纯云 Azure Active Directory 进行 SQL Azure 集成身份验证失败

    我已经创建了 Azure 租赁并配置了以下内容 Azure AD 具有 简单的自定义域名 少于 15 个字符 DNS 验证等一切都很好 用户和管理员组 两个组中的用户 VNET DNS 和 IP 地址 启用设备管理 启用域服务并连接到 VN
  • Twitter API 在 XAMPP 上返回 NULL

    我正在尝试调用 Twitter API 简而言之 我的问题与描述的相同here 我接到电话NULL on a var dump 结果 However cURL 工作正常 我已经包含了最新版本的twitter api php脚本和所有令牌 密
  • 如何从输入类型文件多个中删除特定文件?

    我正在使用多个输入类型文件来更新一些图片 上传之前 页面会显示每张图片的缩影 我想为每张图片添加一个删除链接 当用户单击时 图片就会消失 文件也会从输入中删除 我尝试使用下面的代码 HTML
  • 理解封装和抽象的简单方法

    学习 OOP 概念特别有兴趣深入理解抽象和封装 已经查看了下面的内容 抽象VS信息隐藏VS封装 抽象和封装之间的区别 我发现如果没有真实且简单的示例类 代码片段 很难理解这些概念 我的一位同事说抽象只不过是创造抽象 类和用范围保护其成员变量
  • 在 Windows Phone 8.1 上获取 CivicAddress

    我正在尝试从 Windows Phone 8 1 中的地理位置获取 CivicAddress 我尝试使用以下代码 Get Current Location var geolocator new Geolocator geolocator D
  • 属性的使用... INotifyPropertyChanged

    这只是我在学习属性时想到的事情 而且我太多地使用了 INotifyPropertyChanged 这只是一个想法 我想听听一些关于它的意见 我知道这需要在编译器上做一些工作 而不是在消费者方面 由于 INotifyPropertyChang
  • 如何在 MySQL 中存储 varbinary?

    只是一个简单的问题 在下面提到的两个选项中 如何存储到varbinaryMySQL 中的列 public key 67498930589635764678356756719 or public key 6749893058963576467
  • 如何为 android MediaController 创建自定义 UI

    我想为我的视频播放器自定义 MediaController 中的控件 我想更换播放按钮的图像 更改皮肤 更改颜色等 有已知的方法可以做到这一点吗 Thanks 我在最近的一个项目中遇到了同样的问题 最终基于库存 MediaControlle
  • “ascii”编解码器无法对位置 9 中的字符 u'\u2013' 进行编码:序号不在范围内(128)

    我正在尝试导入 cvs 但出现此错误 UnicodeEncodeError at brokers csv ascii codec can t encode character u u2013 in position 9 ordinal no
  • 将多个本机 DLL 合并为一个 DLL

    我有很多小的 DLL 我想将它们制作成一个大的 呃 DLL 如在这里建议 我可以通过合并我的项目来做到这一点 但我想要一种侵入性较小的方式 多个DLL可以合并为一个单元吗 快速搜索发现这个线程声称这是不可能的 还有人知道吗 请注意 我谈论的
  • 关闭Form时出现异常(线程+调用)

    我刚刚开始学习c 中的线程和方法调用 但我遇到了一个我找不到解决方案的问题 我制作了一个基本的 C 表单程序 它通过启动线程并调用委托来不断更新和显示数字 在 Form1 load 上启动新线程 private void Form1 Loa
  • Spring security - 如何提及基于表单的身份验证和基本身份验证

    是否可以使用名称空间配置在 Spring security 中提及基于表单的身份验证和基本身份验证 而不覆盖其他身份验证 这样应用程序就可以为基于浏览器的请求和远程客户端提供服务 The grimesjm 的回应是对的 但是 如果您使用 S
  • Java中栈帧的内容

    从Java虚拟机实现中可以明显看出 http docs oracle com javase specs jvms se7 html index html 该堆栈帧存在于堆上 用于存储方法的运行时数据 但是java中栈帧的内容是什么以及栈帧是
  • 让div占据100%的身体高度,减去固定高度的页眉和页脚[重复]

    这个问题在这里已经有答案了 根据我的研究 这似乎是一个绝对经典的 CSS 问题 但我找不到明确的答案 所以 StackOverflow 就是这样 如何设置内容 div 占据正文高度的 100 减去固定高度页眉和页脚所占据的高度
  • 在 C# 中使用 LINQ 从名称值列表中获取 4 个元素的组

    我想循环遍历这个名称值对列表 并将它们分成 4 个一组 数据会是这样的 value1 1 value2 1 value3 1 value4 1 value1 2 value2 2 value3 2 value4 2 它会将其分组为 1 个列
  • 仅使用 css 换行(如

    是否可以在纯CSS中 即不添加额外的html标签 进行换行 例如 br 我想要在之后换行 h4 元素 但不在之前 HTML li Text text text text text h4 Sub header h4 Text text tex
  • 具体来说,VMMap 如何知道给定的内存区域是线程堆栈?

    我一直在使用 Mark Russinovich 的 VMMap 来为我正在分析的进程映射虚拟内存 使用 VirtualQueryEx 我可以遍历外部进程的空间并获取有关进程地址空间内的内存区域的信息 当然 这些区域与 VMMap 匹配 但
  • std::function 可以用来存储带有可变参数的函数吗[重复]

    这个问题在这里已经有答案了 我有一个在应用程序中传递的结构 其中包含一堆回调函数 typedef struct std function
  • 从 pyenv-virtualenv 切换到 pipelinev 时保持相同的共享 virtualenv

    我开始看pipenv看起来还不错 我唯一担心的是 我的大部分项目都涉及numpy scipy和其他一些不那么小的图书馆 目前管理我的项目的方式 I have pyenv and pyenv virtualenv安装 我有一些 目前是 4 个