簡體   English   中英

使用 pip install -e 指定 extras_require

[英]Specify extras_require with pip install -e

從 git 存儲庫安裝時,如何使用 pip 安裝 extras_requires ?

我知道當項目在 pypi 上時,您可以執行pip install project[extra]
而且您必須為 git repo 執行pip install -e git+https://github.com/user/project.git#egg=project但我沒有設法找到如何將這兩個選項鏈接在一起。

這應該工作, 每個例子#6

對於遠程倉庫:

pip install -e git+https://github.com/user/project.git#egg=project[extra]

這對於本地人來說(感謝@Kurt-Bourbaki):

pip install -e .[extra]

根據@Jurt-Bourbaki:

如果您使用的是zsh ,則需要轉義方括號或使用引號:

pip install -e .\[extra\]
# or
pip install -e ".[extra]"

需要注意的重要一點:括號周圍或括號內不應有空格。 這將起作用: -e ".[extra1,extra2]"但這不會: -e ". [extra1, extra2]" - 甚至作為 requirements.txt 文件中的一行,它不是那么明顯。 最糟糕的是,當你有空格時,額外的東西會被默默地忽略。

這也適用於從whl文件安裝時,例如,您可以執行以下操作:

pip install path/to/myapp-0.0.1-py3-none-any.whl[extra1]

這與文檔相去甚遠,也不是特別直觀。

對於某些用戶來說可能並不明顯,對我來說也不是,所以想在下面的命令中突出顯示這個extra的內容

pip install -e ".[extra]"

需要替換為額外要求的實際名稱。

例子:

您將options.extras_require部分添加到setup.cfg中,如下所示:

[options.extras_require]
  test =
    pre-commit>=2.10.1,<3.0
    pylint>=2.7.2,<3.0
    pytest>=6.2.2,<7.0
    pytest-pspec>=0.0.4,<1.0

然后你安裝額外的test如下

pip install -e ".[test]"

使用 git + ssh 從私有存儲庫安裝帶有附加功能的軟件包:

pip install -e 'git+ssh://git@github.com/user/project.git#egg=project[extra1,extra2]'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM