如何使用pip命令从requirements.txt文件升级我所有的python包?
尝试以下命令
$ pip install --upgrade -r requirements.txt
因为python包的后缀是版本号(Django==1.5.1),所以它们似乎不会升级。有没有比手动编辑requirements.txt文件更好的方法?
EDIT
正如Andy在他的回答中提到的,包被固定到特定的版本,因此不可能通过pip命令升级包。
但是,我们可以使用以下命令使用pip-tools实现这一点。
$ pip-review --auto
这将自动升级requirements.txt中的所有包(确保使用PIP install命令安装PIP -tools)。
我已经回答了这个问题。以下是我的解决方案:
因为没有简单的方法来逐个升级包,并更新requirements.txt文件,所以我写了这个pip-upgrader,它也更新了所选包(或所有包)的requirements.txt文件中的版本。
安装
pip install pip-upgrader
使用
激活您的virtualenv(这很重要,因为它还将在当前的virtualenv中安装升级包的新版本)。
CD到你的项目目录,然后运行:
pip-upgrade
高级用法
如果需求被放置在一个非标准的位置,将它们作为参数发送:
pip-upgrade path/to/requirements.txt
如果你已经知道要升级什么包,只需将它们作为参数发送:
pip-upgrade -p django -p celery -p dateutil
如果需要升级到预发布/后发布版本,请在命令中添加——pre-release参数。
完全披露:这个包是我写的。