JavaScript의 npm이 얼마나 위대한 것인지 느껴지는 날이다.
Python에서 Dependency 관리는
virtualenv를 생성해서 하거나,
Pipenv / Poetry를 사용해서 한다.
https://spoqa.github.io/2019/08/09/brand-new-python-dependency-manager-poetry.html
Poetry는 불안정하다고 한다.
Pipenv를 고려했으나 이미 팀원들이 requirements.txt를 만들어놓은 상태.
https://ourcstory.tistory.com/227
그래서 virtualenv로 간단하게 하기로 했다.
정말 심플하게 설명해주셔서 쉽게 적용이 가능했다.
pip3 install virtualenv
virtualenv (원하는 폴더명)
source (원하는 폴더명)/bin/activate
이렇게 하면 shell에서 앞에 원했던 폴더명이 생기면서
가상환경에 진입한다.
여기는 아무런 dependency가 설치되어있지 않다.
global로 설치된 모듈이 실행이 안된다.
그래서 여기서 프로젝트에 필요한 모듈을 설치해 준 후,
pip3 freeze > requirements.txt
를 입력해주면 project에 필요한 dependency만 깨끗하게 requirements에 작성이 된다.
npm의 package.json처럼 말이다.
가상환경 진입여부는 쉽게 파악이 가능하다.
터미널에서 앞에 지정해주었던 폴더명이 매 커맨드마다 뜬다.
여기서 나가고 싶다면
deactivate
참 쉽죠?