如何使用pip命令从requirements.txt文件升级所有python包?
用下面的命令尝试
$ pip install --upgrade -r requirements.txt由于python包后缀有版本号(Django==1.5.1),所以它们似乎没有升级。有比手工编辑requirements.txt文件更好的方法吗?
编辑
正如Andy在他的回答包中提到的,它被固定在一个特定的版本上,因此不可能通过pip命令来升级包。
但是,我们可以使用下面的命令使用pip-tools来实现这一点。
$ pip-review --auto这将自动升级requirements.txt中的所有包(确保使用pip命令安装pip-tools )。
发布于 2014-07-15 17:37:14
不是的。您的需求文件一直是特定版本的已锁定。如果您的需求被设置为该版本,则不应该试图在这些版本之后进行升级。如果需要进行升级,则需要切换到需求文件中的未固定版本。
示例:
lxml>=2.2.0这将将lxml升级到比2.2.0更新的任何版本。
lxml>=2.2.0,<2.3.0这将将lxml升级到2.2.0至2.3.0之间的最新版本。
发布于 2017-04-26 18:50:14
我已经回答了这个问题,https://stackoverflow.com/a/43642193/1552520。这是我的解决方案:
因为没有简单的方法逐个升级包和更新requirements.txt文件,所以我编写了这个pip升级器,还为所选的包(或所有包)更新了文件中的版本。
安装
pip install pip-upgrader使用
激活您的virtualenv (重要的是,因为它还将在当前虚拟环境中安装升级包的新版本)。
cd进入您的项目目录,然后运行:
pip-upgrade高级用法
如果需求被放置在一个非标准位置,将它们作为参数发送:
pip-upgrade path/to/requirements.txt如果您已经知道要升级的包,只需将它们作为参数发送:
pip-upgrade -p django -p celery -p dateutil如果您需要升级到发行前/发布后版本,请在命令中添加--prerelease参数。
完全公开:我写了这个包裹。
发布于 2014-07-15 17:33:45
你可以试试:
pip install --upgrade --force-reinstall -r requirements.txt您还可以忽略已安装的包并安装新的包:
pip install --ignore-installed -r requirements.txthttps://stackoverflow.com/questions/24764549
复制相似问题