小编典典

如何使用 pip 和需求文件升级特定软件包?

all

我在我的 Django 项目中使用 pip 和一个 virtualenv 中的需求文件。我正在尝试升级一些软件包,尤其是 Django
本身,并且我收到有关源代码冲突的错误:

/build/Django 中的源<virtualenv具有与 Django==1.2.4 冲突的版本 1.2.3(来自 -r
requirements/apps.txt(第 3 行))

那是在我的需求文件中将 Django 的版本号从 1.2.3 更新到 1.2.4 之后。我正在使用这个命令来实际进行升级:

pip --install --upgrade -E `<virtualenv dir`> --requirement `<requirements file`>

我找不到任何触发总包重新下载的标志。我什至尝试先运行卸载命令,然后安装,但没有骰子。我错过了什么吗?


阅读 73

收藏
2022-03-08

共1个答案

小编典典

首先确保您检查了投票最多的答案:
我运行了以下命令,它从 1.2.3 升级到 1.4.0

pip install Django --upgrade

升级快捷键:

pip install Django -U

注意:如果您要升级的软件包有任何要求,此命令会将所有要求额外升级到可用的最新版本。在最新版本的 pip 中,您可以通过指定--upgrade-strategy only-if-needed. 使用该标志,除非依赖包的安装版本不再满足升级包的要求,否则依赖项将不会升级。


我不确定这是否正是你的问题,但就我而言,我无法将 Django 升级到 1.2.4 - 我总是使用 1.2.3 版本完成,所以我卸载了 Django:

<virtualenv>/bin/pip uninstall Django

然后我删除了<virtualenv>/build/Django目录,最后我安装了正确的版本:

<virtualenv>/bin/pip install Django
2022-03-08