для деталей о том, как создать дистрибутив.

ема, с которой я сталкиваюсь, небольшая, но раздражающая:

Коллега работает над одним проектом в системе контроля версий X (VCS-X). Другой коллега работает в другой системе контроля версий Y и использует пакеты от X.

К сожалению, коллега в VCS-X использует локальный импорт и изменяет свой путь, используяsys.path.append('trunk/my_location') в их коде.

Я считаю, что это неправильная практика, поскольку коллеги в X заставляют коллегу Y редактировать код, прежде чем он сможет его запустить, просто потому, что их репо назван по-другому.

Как управлять этими зависимостями?

Пример:

Разработчик X:

>>> sys.path.append('my_repo/my_location')
>>> from my_location import toolbox
>>> nosetests -v
toolbox.test1 ... ok
toolbox.test2 ... ok
...

Разработчик Y:

Шаг 1:

>>> nosetests -v
toolbox.test1 ... fail
...

Шаг 2:

>>> sys.path.append('my_repo/my_location')
>>> from my_location import toolbox
Import error: No such package.

Шаг 3:

>>> sys.path.append('my_colleagues_repo/my_location')
>>> from my_location import toolbox
>>> nosetests -v
toolbox.test1 ... ok
toolbox.test2 ... ok

"... вздох следует; код работает ..."

Ответы на вопрос(1)

Ваш ответ на вопрос