developer tip

virtualenv는 어디에서 만들어야합니까?

optionbox 2020. 8. 27. 07:41
반응형

virtualenv는 어디에서 만들어야합니까?


내 가상 환경을 어디에 두어야하는지 혼란 스럽습니다.

첫 번째 django 프로젝트에서 다음 명령으로 프로젝트를 만들었습니다.

django-admin.py startproject djangoproject

그런 다음 djangoproject 디렉토리로 cd'd하고 명령을 실행했습니다.

virtualenv env

내부 djangoproject디렉터리 와 동일한 수준에 가상 환경 디렉터리를 생성했습니다 .

이 특정 프로젝트에 대한 virtualenv를 생성하는 잘못된 장소입니까?

나는 대부분의 사람들이 모든 virtualenv를 완전히 다른 디렉토리 (예 :)에 함께 보관 ~/virtualenvs한 다음 virtualenvwrapper를 사용하여 이들 사이를 전환 한다는 인상을 받고 있습니다.

이를 수행하는 올바른 방법이 있습니까?


많은 사람들이 virtualenvwrapper 도구를 사용합니다.이 도구는 모든 virtualenv를 동일한 위치 ( ~/.virtualenvs디렉토리)에 보관하고 여기에서 만들고 유지하기위한 바로 가기를 허용합니다. 예를 들어 다음을 수행 할 수 있습니다.

mkvirtualenv djangoproject

그리고 나중에 :

workon djangoproject

virtualenv 디렉토리를 배포하고 싶지 않기 때문에 프로젝트 자체에 유지하는 것은 좋지 않을 수 있습니다 (컴퓨터 또는 운영 체제에 따라 다를 수 있음). 대신 pip를 사용하여 requirements.txt 파일을 유지하세요 .

pip freeze > requirements.txt

배포합니다. 이렇게하면 프로젝트를 사용하는 다른 사용자가 다음을 사용하여 모든 동일한 요구 사항을 virtualenv에 다시 설치할 수 있습니다.

pip install -r requirements.txt

virtualenv 디렉토리의 위치를 ​​변경하면 손상됨

이것은 디렉토리를 저장소 트리 외부에 두는 것의 주요 이점입니다 . 예를 들어 ~/.virtualenvswith virutalenvwrapper.

그렇지 않고 프로젝트 트리에 보관하면 프로젝트 위치를 이동하면 virtualenv가 중단됩니다.

참조 : virtualenv 폴더를 중단하지 않고 이름 바꾸기

--relocatable있지만 완벽하지 알려져있다.

또 다른 사소한 이점 : 그럴 필요가 없습니다 .gitignore.

그렇지 않다면 관련 항목을 서로 가깝게 유지하기 위해 내 virtualenvs를 프로젝트 트리 자체에 gitignor 상태로 두었습니다.

프로젝트 전체에서 주어진 virtualenv를 재사용하지 않을 가능성이 높으므로 괜찮습니다.


일반적으로 허용되는 위치는 virtualenvwrapper의 기본 설치 위치와 동일한 위치입니다. ~/.virtualenvs

관련 항목 : virtualenvwrapper는 일반적인 virtualenv 명령에 대한 속기를 제공하는 훌륭한 도구입니다. http://www.doughellmann.com/projects/virtualenvwrapper/


당신이 사용하는 경우 pyenv install Python, 다음 pyenv-VIRTUALENV는 가장 좋은 방법이 될 것입니다. .python-version파일을 설정 하면 작업 폴더 변경시 가상 환경을 자동으로 활성화하거나 비활성화 할 수 있습니다. Pyenv-virtualenv또한 모든 가상 환경을 $HOME/.pyenv/versions폴더에 넣습니다 .

참고 URL : https://stackoverflow.com/questions/12184846/where-should-virtualenvs-be-created

반응형