有什么方法可以清理 venv 中,当前项目依赖的库文件?

有什么方法可以清理 venv 中,当前项目依赖的库文件?,第1张

有什么方法可以清理 venv 中,当前项目依赖的库文件?,第2张

有一个项目的虚拟环境 venv,小组成员不断往里面 pip install 了很多依赖库,等到要在生产机上发布的时候,pip freeze > requirements.txt 里面就有很多有用的没用的全装进去了。

有什么方法可以清理吗?怎么分离 requirements.txt 里面哪些是必须依赖的库,哪些是没用的冗余? ----------------------- 以下是精选回复-----------------------

答:能有多大?差那点磁盘吗……
答:pipreqs
答:以前一直用的 pipenv 或 poetry 管理依赖, 所以会自动清理不用的

你如果想找个类似 `go mod tidy` 的东西... 为什么一开始不就写好 requirements 然后一直用它安装呢, 很少用 freeze 功能, requirements 里也只写最顶层依赖, 所以锁的估计不够严格, 才使我不得不转到 pipenv 上去的...
答:pipdeptree pippurge
答:反了 requirements 应该是 source of truth 而不是某个人的本地环境

简单办法就是看看哪些有 import 咯
答:楼主要明白一点很重要的东东,requirements.txt 只是开发者所需要的最顶层的依赖清单。
在执行 pip install -r requirements.txt 的时候安装的东西远不是这个清单中的包,因为这些包本身还要依赖其它的包,在安装过程中如果没有就会自动安装其它包。
但是要想要清楚的知道 requirements.txt 里面这些包依赖了哪些是比较困难的。
最省事的办法就是直接把 venv 整改删除了,重建再执行 pip install -r requirements.txt

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 有什么方法可以清理 venv 中,当前项目依赖的库文件?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情