Gerenciando o sys.path para vários desenvolvedores

O problema que estou enfrentando é pequeno, mas irritante:

Um colega está trabalhando em um projeto no sistema de controle de versão X (VCS-X). Outro colega está trabalhando em outro sistema de controle de versão Y e usa os pacotes do X.

Infelizmente, o colega no VCS-X usa importação local e modifica seu caminho usandosys.path.append('trunk/my_location') no código deles.

Minha opinião é que essa é uma prática incorreta, pois os colegas do X obrigam o colega Y a editar o código antes de poder executá-lo, simplesmente porque o repositório é nomeado de maneira diferente.

Como essas dependências devem ser gerenciadas?

Exemplo:

Desenvolvedor X:

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

Desenvolvedor Y:

Passo 1:

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

Passo 2:

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

Etapa 3:

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

"... Suspiro segue; o código está funcionando ..."

questionAnswers(1)

yourAnswerToTheQuestion