使用pip更新包的方法是什么?那些不起作用
pip update
pip upgrade
Run Code Online (Sandbox Code Playgroud)
我知道这是一个简单的问题,但因为它不容易找到(pip 文档没有弹出,堆栈溢出的问题是相关的,但并不完全相关)
假设python包A需要B,C和D; 有没有办法列出A→BCD而不加载它们?
Requires在metadata(yolk -M A)中经常是不完整的,grr.
可以下载A.tar/A.egg,然后查看A/setup.py,但其中一些非常血腥.
(我认为至少可以获得一级依赖关系;即使是98%的解决方案也会比雪崩下载更好.)
我的问题与这个问题非常相似.但它的不同之处在于,如果我正在安装某个软件包,我只想禁用特定依赖项的升级而不是所有依赖项.我知道有一面旗帜,--no-deps但它会排除所有依赖,而我只想排除一个.
这是一个场景:
以下是django-rosetta最新版本中的依赖项:
install_requires=[
'six >=1.2.0',
'Django >= 1.3'
]
Run Code Online (Sandbox Code Playgroud)
现在我想升级rosetta pip install -U django-rosetta.但它试图下载和安装,Django 1.5因为在rosetta依赖Django >= 1.3是必需的(我不希望它这样做,因为已经安装了Django 1.4)我只希望它升级six包,如果有的话.
--no-deps标志不起作用,因为它也将排除six包.我也没有使用虚拟环境.有什么建议吗?