为 Python 虚拟环境管理 requirements.txt 的内容
Managing contents of requirements.txt for a Python virtual environment
所以我正在从头开始创建一个全新的 Flask 应用程序。正如所有优秀的开发人员所做的那样,我的第一步是创建一个虚拟环境。
我在虚拟环境中安装的第一个东西是Flask==0.11.1
。 Flask 安装其以下依赖项:
- click==6.6
- itsdangerous==0.24
- Jinja2==2.8
- MarkupSafe==0.23
- Werkzeug==0.11.11
- wheel==0.24.0
现在,我创建一个 requirements.txt 以确保每个克隆存储库的人都拥有相同版本的库。然而,我的困境是:
- 我是否在 requirements.txt 中提到了每个 Flask 依赖项以及版本号
或者
- 我是否只在 requirements.txt 中提及确切的 Flask 版本号,并希望当他们进行 pip 安装时 requirements.txt ,Flask 会负责依赖管理,他们会下载正确版本的依赖库
您可以(从您的活动虚拟环境)执行以下操作
pip freeze > requirements.txt
它会自动处理您项目中所有可用的 libraries/modules。
下一个开发者只需发布:
pip install -r requirements.txt
这两种方法都有效且有效。但是有一点不同。当您在 requirements.txt
中输入所有依赖项时,您将能够固定它们的版本。如果您将它们排除在外,可能会有稍后的更新,并且如果 Flask 在其依赖项中有类似 Werkzeug>=0.11
的内容,您将安装更新版本的 Werkzeug。
因此归结为更新与定义的环境。哪个更适合你。
一件好事是您正在使用 virtualenv,这将使您的任务变得非常简单。
激活 virtualenv ($source path_to_virtualenv/bin/activate
)
进入你的项目根目录
获取requirements.txt
中的所有包和依赖项
pip freeze > requirements.txt
除了确保下一个人通过以下命令递归安装要求外,您不必担心其他任何事情
pip install -r requirements.txt
如果您只想查看已安装的软件包,那么只需执行
pip freeze
。
但是如果您想要在 requirement.txt 中包含所有这些包,那么请执行
pip freeze > requirements.txt
所以我正在从头开始创建一个全新的 Flask 应用程序。正如所有优秀的开发人员所做的那样,我的第一步是创建一个虚拟环境。
我在虚拟环境中安装的第一个东西是Flask==0.11.1
。 Flask 安装其以下依赖项:
- click==6.6
- itsdangerous==0.24
- Jinja2==2.8
- MarkupSafe==0.23
- Werkzeug==0.11.11
- wheel==0.24.0
现在,我创建一个 requirements.txt 以确保每个克隆存储库的人都拥有相同版本的库。然而,我的困境是:
- 我是否在 requirements.txt 中提到了每个 Flask 依赖项以及版本号 或者
- 我是否只在 requirements.txt 中提及确切的 Flask 版本号,并希望当他们进行 pip 安装时 requirements.txt ,Flask 会负责依赖管理,他们会下载正确版本的依赖库
您可以(从您的活动虚拟环境)执行以下操作
pip freeze > requirements.txt
它会自动处理您项目中所有可用的 libraries/modules。
下一个开发者只需发布:
pip install -r requirements.txt
这两种方法都有效且有效。但是有一点不同。当您在 requirements.txt
中输入所有依赖项时,您将能够固定它们的版本。如果您将它们排除在外,可能会有稍后的更新,并且如果 Flask 在其依赖项中有类似 Werkzeug>=0.11
的内容,您将安装更新版本的 Werkzeug。
因此归结为更新与定义的环境。哪个更适合你。
一件好事是您正在使用 virtualenv,这将使您的任务变得非常简单。
激活 virtualenv (
$source path_to_virtualenv/bin/activate
)进入你的项目根目录
获取requirements.txt
中的所有包和依赖项pip freeze > requirements.txt
除了确保下一个人通过以下命令递归安装要求外,您不必担心其他任何事情
pip install -r requirements.txt
如果您只想查看已安装的软件包,那么只需执行 pip freeze
。
但是如果您想要在 requirement.txt 中包含所有这些包,那么请执行
pip freeze > requirements.txt