2013-02-25 3 views
1

다른 소스 제어 저장소 (예 : pypi가 아닌 개인 프로젝트)의 프로젝트에 의존하는 python 프로젝트를 작성하는 관용적 인 방법은 무엇입니까?개인 SCM 리포지토리 (pypi가 아닌)에서 setup.py에 프로젝트를 포함시키는 방법은 무엇입니까?

foobar이라는 호스트의 프로젝트가 있고 다른 프로젝트의 setup.py에 포함시키고 싶다고 가정 해 봅시다.

setup(
    ... 
    dependency_links=[ 
     'git+https://example.com/spamneggs/foobar.git#egg=foobar-1.2.3' 
    ] 
    install_requires=[ 
     'foobar', 
    ] 
) 

dependency_links 항목이 사용됩니다

내가 당신은 dependency_links 옵션을 사용 종속성을 설치하기 위해 추가 장소를 지정할 수 있습니다 Extension('foobar', scm='scm:git:https://example.com/foobar.git')

답변

4

같은 것을 지정할 수 있습니다 받는다는의 SCM 플러그인과 비슷한 뭔가가 있나요 패키지를 찾고, SCM에 저장된 패키지의 경우 #egg=package-version 조각 식별자를 사용하면 도구가 해당 링크에서 찾을 수있는 패키지와 버전을 알 수 있습니다.

setuptools 프로젝트 설명서의 "Dependencies that aren’t in PyPI" chapter을 참조하십시오.