如何使用Pipenv安装/更新软件包而不更新其余软件包

joz*_*ozo 13 python dependency-management pipenv

我使用pipenv(版本2018.11.26)管理项目中的依赖项。有时我只想添加或更新一个软件包,而不更改其他软件包的版本。我该如何实现?我都尝试过

pipenv update --selective-upgrade requests
Run Code Online (Sandbox Code Playgroud)

pipenv update --keep-outdated requests
Run Code Online (Sandbox Code Playgroud)

但仍会在锁定期间更新所有软件包的版本。

Pipfile和Pifile.lock:https://gist.github.com/jozo/d8351ed708e84c5ea0f69e82e585e5c6

Eug*_*ash 10

运行pipenv install/uninstall/update--keep-outdated将防止pipenv从更新无关锁定包。(奇怪的是,这不是默认行为)。

如果您不希望某些软件包自动更新,则应将其固定在中Pipfile,例如:

[packages]
django = "==2.2"
djangorestframework = "==3.9.2"
Run Code Online (Sandbox Code Playgroud)

  • `--keep-outdated`不会给我一个错误,但是对我来说它仍在更新pipfile中的所有内容。 (6认同)
  • @EugeneYarmash `keep-outdated` 不适用于本[问题](https://github.com/pypa/pipenv/issues/2665#issuecomment-426656712)中报告的特定包。目前看来没有解决办法。 (6认同)