Un œuf est juste du code python groupé . Dans une url git, l'œuf est le nom du projet. Support VCS
Normalement, nous installons les paquets python à partir de Pypi, donc vous spécifiez SEULEMENT le nom et la version du paquet (ou il suppose la dernière version si vous ne la spécifiez pas). Pypi recherche alors l'œuf que vous voulez et pip l'installe. pip install celery
installerait le dernier œuf publié et pip install celery[redis]
installe un œuf différent qui contient le même paquet celery et installe également les derniers œufs des paquets listés comme dépendants de redis dans le setup.py de celery.
Avec les chemins git et gitlab, vous spécifiez /{user|group}/{repository}.git@{tag}#egg={package-name}
. il y a une différence entre #egg=celery
y #egg=celery[redis]
mais ils seront tous deux issus du même code source.
"tag" peut également être une branche ou un hash de commit en plus d'un tag réel. Il est supposé être master
si vous ne le spécifiez pas.
par exemple, git+https://github.com/celery/celery.git#egg=celery==4.3.0
je vérifierais la branche master et l'installerais. Même si vous avez spécifié un numéro de version, celui-ci n'est pas pris en compte dans l'installation. LE NUMÉRO DE VERSION EST IGNORÉ
Lors d'une installation via git ou d'autres urls VCS, vous voudrez trouver le tag ou le hash de la version dont vous avez besoin. Par exemple, git+https://github.com/celery/celery.git@v4.3.0#egg=celery
qui va extraire le commit marqué "v4.3.0" et installer le paquet à partir de ce code source. En supposant que les mainteneurs n'ont pas mal étiqueté leurs dépôts, vous pouvez obtenir la version que vous voulez de cette façon.