2012-01-26 1 views
2

서문 공식 python 패키지 python-openid (pypi.org를 통해 배포 됨)은 Google Apps에서 작동하지 않습니다. 누군가가 이것을 수정하고을 github에 업로드했습니다. 이제이 분기 된 패키지에 링크해야하는 패키지를 만들고 싶습니다.pip 동결을 깨지 않고 distutils에서 fork 된 패키지에 링크하는 방법은 무엇입니까?

이제이 패키지를 설치하면 모든 것이 잘됩니다. 분기 된 패키지가 설치되었으며 모든 것이 정상입니다. 그러나 pip freeze을 수행 할 때 패키지의 출처에 대한 언급은 없습니다. 공식 패키지를 포함하여 분기 된 패키지를 사용해야하므로 배포가 중단됩니다. 내 패키지에서 분기 된 패키지에 연결하고 분기 된 패키지를 pip freeze에 나열하려면 어떻게합니까?

업데이트

좋아

, 그래서 태그 2.2.5-bouke0를 생성은 분포를 생성 github에 업로드했습니다. 내 setup.py 참조하는 패키지는 이제 다음과 같습니다

dependency_links=[ 
    'http://github.com/Bouke/python-openid/downloads', 
], 
install_requires=[ 
    'python-openid == 2.2.5-bouke0', 
], 

구축하고이 패키지 모두를 설치 괜찮습니다. 참조 된 패키지가 github에서 다운로드되어 올바르게 설치되었습니다. , pypi에 requirements.txt이 실패 등의 배치를 찾을 수 없습니다 버전 2.2.5-bouke0으로

django-federated-login==0.1.3 
python-openid==2.2.5-bouke0 

: 패키지가 어디에서 왔는지 그러나 pip freeze는 표시되지 않습니다. pip freeze에 패키지를 가져올 대체 소스를 어떻게 지시 할 수 있습니까?

답변

1

태그 2.2.5을 저장소에 생성하십시오.

requirements.txt-f https://github.com/adieu/python-openid/downloads을 넣습니다.

버전 번호를 2.2.5-bouke1과 같이 변경하십시오. 자세한 내용은 semver.org를 참조하십시오.

+0

Ah; pip가 해당 URL에서의 다운로드를 찾도록'--find-links' 지시어를 요구 사항 파일에 포함시켜야합니다. [요구 사항 파일 형식] (http://www.pip-installer.org/en/latest/requirements.html#indexes-find-links)에 대한 추가 정보 – bouke

+2

그건 그렇고,'-r' 옵션으로도 동일하게 처리 할 수 ​​있습니다. 요구 사항 파일에 대해 상속받을 수 있습니다. 예를 들어, 보통'requirements/base.txt','requirements/production.txt'와'requirements/development.txt'를 만듭니다. 그리고 마지막 두 줄은 첫 줄에'-r base.txt'를 가지고 있습니다. –