먼저 글로벌 환경의 pip 버전을 알아본다.
> pip -V
pip 22.2.2 from C:\Users\sonbosun\AppData\Local\Programs\Python\Python39\lib\site-packages\pip (python 3.9)
글로벌 환경은 22.2.2, 기억하자.
테스트로 가상환경을 만들어서 pip 버전을 확인한다.
> py -m venv testenv
방금 만든 가상환경으로 진입
> testenv\Scripts\activate
바로 pip 버전 확인
(testenv) > pip -V
pip 21.2.4 from C:\testenv\lib\site-packages\pip (python 3.9)
가상환경은 왜 21.2.4 ????????????????????????????????
글로벌에 있는 pip 을 그대로 가상환경으로 복사하는게 아니었단 말인가?
사실은 이렇다.
> py -c "import ensurepip; print(ensurepip.version())"
21.2.4
이 명령어는 파이썬 모듈에 내장되어 있는 pip 버전을 확인하는 것이며, 가상환경을 만들 때마다 파이썬 내부에 갖고 있는 pip 버전이 복사됐었던 것이다. 결론은 할 수 있는게 없다. (물론 가상환경안에서 pip 업그레이드를 하면 된다.)
파이썬이 업데이트 될 때마다 pip 은 업데이트 되겠지만, 이미 그 pip 은 최신버전이 아닐 가능성이 높다.