requirements.txt 란?
requirements.txt란?
- python 프로젝트의 의존성 정보가 담긴 문서이다. ( node로 치면 npm install로 설치해서 package.json에 담기는 것들)
- 작성이유는 node와 동일하다 협업, 오픈소스 등 다른 사람 혹은 자신이 다른 환경에서 해당 프로젝트를 실행 할 경우 편의를 위해서 작성하고 실제 설치된 파일들의 양과 크기는 어마무시하기 때문에 경량화가 필요하다.
# 예시
asgiref==3.5.2
Django==4.0.3
sqlparse==0.4.2
django-extensions==3.1.5
psycopg2-binary>=2.8
예시를 보면 == 는 정확하게 해당 버전 설치를 요구하는 것이고, <,>를 사용하면 이하, 이상을 말하는 것이다.
또한, 2.* 같은 버전 정보를 와일드 카드를 사용해 작성할 수 있다.(2.대의 아무 버전이나 가능하다는 의미)
requirements.txt 에서 requirements로 반드시 작성할 필요는 없지만 이름만 봐도 알 수 있게 끔하는 것이니 왠만하면 따르자.
작성 방법
우선, python이 설치되어 있다면 작성방법은 쉽다.
현재 프로젝트의 의존성 정보를 확인하면 된다.
명령어 => pip freeze
입력하면 설치된 패키지 버전 정보들을 확인 할 수 있다.
여기서 수동으로 입력하는 것이 아닌
pip freeze > requirements.txt
입력을 하면 생성이 된 것을 확인 할수 있다.
만든 후에 협업, 오픈소스 등 내가 다른 환경에서 사용해야 하는 경우
pip install -r requirements.txt
명령어로 실행하면 다른 환경에서 내가 기존에 사용했던 패키지들을 설치하고 사용할 수 있다.
인터넷을 검색하며 찾아보고 위키와 블로그를 읽어보며 작성한글입니다. 혹시라도 부정확한 정보를 전달드릴수 있습니다. 틀린부분이 있으면 댓글을 남겨주세요.
참고