我的问题与this问题非常相似。但它的不同之处在于,如果我正在安装某个软件包,我只想禁用特定依赖项的升级而不是所有依赖项。我知道有一个标志--no-deps
,但它会排除所有依赖,而我只想排除一个。
以下是一个场景:
以下是最新版本中的django-rosetta
个依赖项:
install_requires=[
'six >=1.2.0',
'Django >= 1.3'
]
现在我要升级rosetta pip install -U django-rosetta
。但它试图下载并安装Django 1.5
,因为在rosetta依赖Django >= 1.3
是必需的(并且我不希望它已经安装了Django 1.4)我只希望它升级{{1如果有的话,包。
six
标志无效,因为它也会排除--no-deps
包。我也没有使用虚拟环境。有什么建议吗?
答案 0 :(得分:19)
这样可以让您更精确:
pip install -U django-rosetta Django==1.4
答案 1 :(得分:7)
创建包含以下内容的需求文件requirement.txt
Django==1.4
然后
pip install -U django-rosetta -r requirement.txt