我为什么不给Heroku推一个虚拟机呢?

2024-05-06 20:08:40 发布

您现在位置:Python中文网/ 问答频道 /正文

在线教程告诉我把venv放到我的.gitignore文件中。为什么我不想推送我的虚拟环境,以便我或其他开发人员可以轻松地将项目拉到他们的本地,并方便地拥有所有的依赖关系?在


Tags: 文件项目venv关系开发人员虚拟环境gitignore
2条回答

virtualenv is a tool to create isolated Python environments.

Heroku为您提供了一个环境,您可以使用要求.txt这是Heroku为Django应用程序所需的。在

如果您想与其他开发人员共享这些依赖关系,请使用另一个远程到github。按你的requirements.txt

然后告诉开发人员使用这个文件安装包。在

示例

在要求.txt在

Django==1.3
Fabric==1.2.0
Jinja2==2.5.5
PyYAML==3.09

要一次性安装这些软件包,请使用:

pip install -r /path/to/requirements.txt

此外,当您在本地计算机上运行应用程序时,虚拟环境文件可能会更改,这将使您的repo推送无用的东西。在

注意:如果您想知道虚拟环境中安装了哪些软件包,请使用pip freeze

如果要将包导出到requirements.txt,请运行

pip freeze > requirements.txt

除了奥特曼所说的之外,虚拟机根本就不是便携的。试图移动它会破坏它,而且创建一个新环境比修复它更容易。因此,即使在使用虚拟环境的部署平台上,将它们签入git也不起作用。在

相关问题 更多 >