<virtualenv?>

virtual environment를 만들어주는 패키지다

gradle, maven처럼 프로젝트의 라이브러리 버전을 매니지먼트해준다


<라이브러리 버전 관리?>

virtualenv는 프로젝트에서 라이브러리를 많이 사용할 때, 라이브러리 버전을 관리하기위해 필요해진다

라이브러리 버전 관리는 왜 필요할까?

1. 다른 환경(PC)에서 프로젝트를 개발/실행할 때, library version compatibility issue가 발생하지 않도록 해준다

2. 이 프로젝트에서 사용하는 라이브러리들을 정리하기 간편하다


2번은 virtualenv를 실행하고, 필요한 라이브러리들을 다운받고, 

pip freeze > req.txt

위 커맨드를 통해 req.txt file로 redirection하면 dependency library들의 리스트를 만들수 있다. 그리고

pip install -r req.txt

다른 환경에서 위 커맨드를 통해 필요 라이브러리들을 손쉽게 인스톨할수있다


<사용법>

위에서 virtualenv 사용이유에 대해서 살펴보았다. 이제 사용법을 알아보자

virtualenv venv

위 커맨드를 실행하면 현재 경로에 venv 디렉토리가 생성된다

venv/Scripts/activate

위 커맨드로 venv를 시작할 수 있다

pip freeze

위 커맨드로 venv가 잘 실행되었는지 확인할 수 있다 (인스톨한 라이브러리가 없다고 보여야함)

deactivate

venv를 빠져나올 수 있다


---


<주의>

venv 디렉토리를 생성하고 다른 곳으로 옮겨서 사용하면 제대로 동작하지 않는다

그땐 바뀐 경로에서 다시

virtualenv venv

커맨드를 실행하여 그 경로에 다시 venv를 적용하여야한다


그리고 windows powershell에서는 사용하기 귀찮으므로 cmd를 추천한다

또한 cmd에서는 경로에 / 대신 \(back slash)를 사용하여야한다
(이래서 mac를 쓰나보다)

example: venv\Scripts\activate



WRITTEN BY
hojongs
블로그 옮겼습니다 https://hojongs.github.io/