如何解决通过 sh 脚本自动创建 pyenv
我正在运行一个项目,该项目使用 pip 和一个 requirements.txt 文件来安装和跟踪一些依赖项。我想编写一些 sh 脚本来运行、构建和测试应用程序。对于初学者,我想要一种方法来检查当前文件夹是否在 pyenv 中,如果不是,则创建一个来封闭应用程序,而不是弄乱其他人的依赖项。另外,如果requirements.txt 是一种很好的方法,并且是否有一种方法可以像使用节点包一样跟踪已安装的版本,我想了解跟踪此类依赖项的最佳方法。
解决方法
使用Pipenv。与 requirements.txt
相比,它是一种更好的跟踪依赖项的方式,它使用 Pyenv 自动安装项目所需的 Python 版本。
来自网站:
Pipenv 寻求解决的问题是多方面的:
- 您不再需要单独使用
pip
和virtualenv
。他们一起工作。 - 管理一个
requirements.txt
文件can be problematic,所以Pipenv使用Pipfile
和Pipfile.lock
来分离抽象依赖 来自最后一个测试组合的声明。 - 哈希值无处不在,始终如一。安全。自动暴露安全漏洞。
- 强烈鼓励使用最新版本的依赖项以最大程度地降低安全风险arising from outdated components。
- 让您深入了解您的依赖关系图(例如
$ pipenv graph
)。 - 通过加载
.env
文件简化开发工作流程。
[...]
Pipenv 功能
- 实现真正的确定性构建,同时轻松地仅指定您想要的内容。
- 为锁定的依赖项生成并检查文件哈希。
- 如果
pyenv
可用,则自动安装所需的 Python。 - 通过查找
Pipfile
以递归方式自动找到您的项目。 - 如果
Pipfile
不存在,则自动生成。 - 在标准位置自动创建
virtualenv
。 - 在安装或卸载软件包时自动向
Pipfile
添加/删除软件包。 - 自动加载
.env
个文件(如果存在)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。