You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让pip install --upgrade仅安装正式发布版本而非开发后缀版

解决pip upgrade优先安装带+后缀分支版本的问题

问题原因

根据PEP 440版本规范,带有+后缀的local version identifier(比如1.2.3+mybranch)的版本,会被pip视为与对应正式版本(1.2.3)同优先级的可用版本。当仓库中存在版本号数值更高的带后缀版本(比如1.2.4+mybranch)时,pip会优先选择这个版本,而非你期望的正式版1.2.4。

解决方案

临时解决(单次命令)

执行升级时,通过版本约束过滤掉所有带+后缀的分支版本:

pip install --upgrade "你的包名!=*+*"

如果需要限定大版本范围(比如只升级到1.x系列的正式版),可以组合约束:

pip install --upgrade "你的包名~=1.0, !=*+*"

持久化配置(默认行为)

如果希望默认升级时都排除带后缀的分支版本,可以在pip配置文件中添加约束:

  1. 找到pip的配置文件位置:
    • Linux/macOS:~/.config/pip/pip.conf
    • Windows:%APPDATA%\pip\pip.ini
  2. 在配置文件中添加以下内容(替换为你的包名):
    [global]
    constraint = /path/to/constraints.txt
    
  3. 创建constraints.txt文件,写入:
    你的包名!=*+*
    
    这种方式会让pip在所有安装/升级操作中自动应用该约束,适合长期需要排除分支版本的场景。

内容的提问来源于stack exchange,提问作者red888

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 00:55:19