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

如何使用uv移除项目依赖库但保留pyproject.toml中的源配置行

如何使用uv移除项目依赖库但保留pyproject.toml中的源配置行

我太懂这个痛点了!每次给本地的mylib更新依赖后,得移除再重新添加才能让项目识别到新依赖,结果uv remove连[tool.uv.sources]里的配置行都给删掉,每次都要重新写一遍路径,真的烦。

这里有两个实用的方法帮你解决这个问题,还有一个能直接跳过移除步骤的小技巧:

方法一:手动修改配置+同步(彻底移除依赖但保留源配置)

如果确实需要把mylib从项目依赖中移除,但想留下源配置方便后续重新添加:

  • 打开项目根目录的pyproject.toml文件
  • 找到[project.dependencies]区块(如果mylib是可选依赖,就找对应的[project.optional-dependencies]子区块),删掉里面的mylib条目
  • 保存文件后,在终端运行:
    uv sync
    

这个命令会同步你的依赖变更,把mylib从虚拟环境中彻底移除,但完全不会改动[tool.uv.sources]里的配置行。之后你要重新添加mylib时,直接跑uv add mylib就行,源配置已经在那儿了。

方法二:用uv sync --exclude临时移除(保留依赖声明)

如果你只是想临时把mylib从当前虚拟环境中移除,但还想保留pyproject.toml里的依赖声明和源配置:
直接在终端运行:

uv sync --exclude mylib

这个命令会让uv在同步依赖时跳过mylib,相当于把它从虚拟环境中移除,但不会修改任何配置文件。之后要恢复的话,直接跑uv sync不带参数就可以了。

额外技巧:不用移除也能刷新依赖

其实你完全不用每次都走移除再添加的流程!当你更新了mylib的依赖后,直接在项目目录运行:

uv sync --refresh mylib

这个命令会强制刷新mylib的所有依赖,同步它的最新配置,一步到位,而且完全不会动你的源配置行,连Jupyter kernel重启都可能省了(不过保险起见还是重启下更好)。

备注:内容来源于stack exchange,提问作者robertspierre

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.13 18:05:28