python - 创建 requirements.txt 文件
问题描述
上传到 GitHub 时,需要包含一个 requirements.txt 文件。我已经创建了一个虚拟环境,所以 pip3 freeze 只列出了我在项目开发过程中安装的包。但是,我还安装了 pylint(由 VS Code 建议),我不想在需求文件中安装它。当我使用 pip3 freeze 时,Pylint 没有在单个条目中列出。那么有没有办法从需求中删除 pylint 和相关的东西?最坏的情况是任何人都可以列出所有 pylint 的东西,以便我可以从需求文件中手动删除它们吗?
解决方案
假设您正在使用pip
(而不是像 Poetry 这样的其他管理器),您可以使用pip-tools来处理这种情况。首先,您将需求手动写入文件:
$ cat requirements.in
# assuming your project uses only following dependencies
django
gunicorn
然后你可以生成整个依赖图:
$ pip-compile requirements.in
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile requirements.in
#
asgiref==3.2.10 # via django
django==3.1 # via -r requirements.in
gunicorn==20.0.4 # via -r requirements.in
pytz==2020.1 # via django
sqlparse==0.3.1 # via django
^ 这是你requirements.txt
的生产。对于开发依赖项,您可以这样做,但将它们保存到单独的文件中,以便在需要时安装它,但它与运行时依赖项保持分离:
$ cat requirements-dev.in
# development requirements
pylint
mypy
pytest
推荐阅读
- javascript - 测试要匹配的特定数量的单词,在 Js 中使用带有正则表达式的已知分隔符
- python - “ValueError:预期,分隔符:第 10 行第 11 列(字符 357)”
- java - Log4j 中的字符串连接性能
- collections - 将 int 列表折叠到 kotlin 中的范围列表
- swift - 如何将函数返回到标签 StringValue
- html - 悬停时的 CSS 下拉菜单
- r - 如何通过点是否在多边形内来标记点
- reactjs - 开玩笑:为什么它会因 TypeError 失败:路径必须是字符串。收到未定义
- javascript - django html模板中的JS脚本
- bitbucket - 适用于所有存储库的 admin bitbucket post hooks 插件