프로그래밍 언어/Python

requirements.txt에 직접 github 소스를 명시하는 방법

Rateye 2021. 9. 1. 10:28
728x90
반응형
질문 : requirements.txt에 직접 github 소스를 명시하는 방법

명령을 사용하여 라이브러리를 설치했습니다.

pip install git+git://github.com/mozilla/elasticutils.git

Github 저장소에서 직접 설치합니다. requirements.txt 해당 종속성을 갖고 싶습니다. 내가 좋아하는 다른 티켓을 검토 한 결과 있지만 그건 내 문제가 해결되지 않았다. 내가 뭔가를 넣으면

-f git+git://github.com/mozilla/elasticutils.git
elasticutils==0.7.dev

requirements.txt 파일에서 pip install -r requirements.txt 결과는 다음과 같습니다.

Downloading/unpacking elasticutils==0.7.dev (from -r requirements.txt (line 20))
  Could not find a version that satisfies the requirement elasticutils==0.7.dev (from -r requirements.txt (line 20)) (from versions: )
No distributions matching the version for elasticutils==0.7.dev (from -r requirements.txt (line 20))

요구 사항 파일git+git 프로토콜 지정자를 사용하는 링크가 언급되어 있지 않으므로 지원되지 않을 수도 있습니다.

아무도 내 문제에 대한 해결책을 가지고 있습니까?

답변

일반적으로 requirements.txt 파일은 다음과 같습니다.

package-one==1.9.4
package-two==3.7.1
package-three==1.0.1
...

Github 저장소를 지정하려면 package-name== 규칙이 필요하지 않습니다.

아래 예제는 GitHub 저장소를 사용하여 package-two @# 사이의 텍스트는 패키지의 세부 사항을 나타냅니다.

Specify commit hash (41b95ec in the context of updated requirements.txt):

package-one==1.9.4
git+git://github.com/path/to/package-two@41b95ec#egg=package-two
package-three==1.0.1

Specify branch name (master):

git+git://github.com/path/to/package-two@master#egg=package-two
  

Specify tag (0.1):

git+git://github.com/path/to/package-two@0.1#egg=package-two
  

Specify release (3.7.1):

git+git://github.com/path/to/package-two@releases/tag/v3.7.1#egg=package-two
  

#egg=package-two 는 여기에서 주석이 아니라 명시 적으로 패키지 이름을 명시하는 것입니다.

이 블로그 게시물 에는 주제에 대한 추가 토론이 있습니다.

출처 : https://stackoverflow.com/questions/16584552/how-to-state-in-requirements-txt-a-direct-github-source
728x90
반응형