PIP hg + и git + всегда загружают пакет, а не обнаруживают удовлетворенное требование - PullRequest
1 голос
/ 11 января 2012

Мой другой вопрос здесь только что получил ответ о том, почему pip svn+ всегда повторно загружал целые пакеты.

Теперь у меня есть несколько пакетов в моем файле pip_requirements, которые всегдазагрузить вместо того, чтобы обнаружить, что требования к пакету удовлетворены.

Это следующие типы:

С помощью svn+ мои пакеты обнаруживаются как удовлетворенные, независимо от того, указываю ли я транк или конкретную ревизию.Различен ли шаблон для мерзавца и меркуриала?

1 Ответ

3 голосов
/ 12 января 2012

Короткий ответ

При использовании любых VCS с файлами требований пипа вы всегда должны указывать #egg=[egg-name]

Итак, ваш файл требований должен содержать:

git+git://github.com/yuchant/django-jinja2.git#egg=django-jinja2
hg+https://bitbucket.org/yuchant/django-storages#egg=django-storages

Длинный ответ

Если вы указываете требования к пунктам так же, как и в своем вопросе, без #egg=[egg-name]. Я собираюсь назвать эту строку идентификатором яйца. Проблема очень похожа на ваш последний вопрос. Pip использует идентификатор яйца для поиска установленных в данный момент модулей Python.

Вот что происходит, если идентификатор яйца не указан:

  1. Пип ищет в установленных модулях git+git://github.com/yuchant/django-jinja2.git
  2. Pip не находит его, поэтому пытается установить его снова

Если вы используете идентификатор яйца, у вас не будет этой проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...