pip를 블랙리스트에 올리는 방법이 있나요?오직내가 없을 때 venv?

pip를 블랙리스트에 올리는 방법이 있나요?오직내가 없을 때 venv?

제가 질문을 드린 이후로Python 패키지 처리를 위한 Pip 및 패키지 관리자 비교venv특히 모듈의 가상 환경 에 대해 많은 것을 배웠습니다 . 요즘은 거의 패키지만 설치해요pip ~에가상 환경. 나는 시스템 전체에 Python 패키지를 거의 설치하지 않습니다.

pip install하지만 제가 항상 두려워하는 한 가지는 명령이 활성화되어 있지 않다는 사실을 깨닫지 못한 채 명령을 실행할 수 있다는 것입니다 venv.

pip를 블랙리스트에 올리는 방법이 있나요?오직내가 없을 때 venv?

답변1

글로벌 옵션이 있습니다require-virtualenv작동하려면 가상 환경이 필요합니다 pip.

이 기능을 구현하는 여러 가지 방법(하나를 선택하세요):

  • ~/.config/pip/pip.conf예를 들어 또는 다음과 같은 구성 옵션(제가 선호하는 것)으로 /etc/pip.conf:

    [global]
    require-virtualenv = True
    

    이것을 실행할 수도 있습니다주문하다구성 파일을 수정/생성합니다.

    pip config set global.require-virtualenv True
    
  • 환경 변수를 사용하여 PIP_REQUIRE_VIRTUALENVvalue 로 설정합니다 true.

  • --require-virtualenv명령줄 옵션을 직접 사용하십시오.

virtualenv 외부에 패키지를 설치하려고 하면 다음 오류가 표시됩니다.

ERROR: Could not find an activated virtualenv (required).

pip를 업그레이드하거나 이전 Python 버전에 virtualenv를 설치하기 위해 이 옵션을 일시적으로 재정의해야 하는 경우 명령 앞에 PIP_REQUIRE_VIRTUALENV=false.

참고: 이전 pip 버전(< 22.0)에서는 이 옵션이 출력 및 문서에서 누락된 것처럼 보이지만 --help제게는 잘 작동합니다. 최신 버전으로 20.3.4를 사용하여 Python 2.7.x에서 테스트되었습니다.

참고 사항:공개 계정 704(작성 당시 초안)은 제안서입니다."[...] Python 3.13+에서는 pip와 같은 패키지 설치 프로그램에 기본적으로 가상 환경이 필요한 것이 좋습니다.".

답변2

쉘 별칭을 사용하여 pip가상 환경 외부를 인수할 수 있습니다.

alias 'pip=cowsay "You are not in a virtual environment"'

virtualenv 시작 파일(예: venv를 입력할 때 얻는 파일):

unalias 'pip'

관련 정보