pip

pip 24+

pip 패키지 설치 도구 CLI 빠른 참조 — install / uninstall / inspect 패키지, 가상 환경, requirements 파일, 설정, 인덱스 관리 — 자주 쓰는 옵션과 실전 예시까지 함께 정리했습니다.

명령어 37개

도움말

pip --version

pip 버전과 가리키는 Python 인터프리터를 출력합니다.

pip --version
pip --help

모든 pip 하위 명령을 나열합니다.

pip --help
pip <subcommand> --help

한 pip 하위 명령의 모든 플래그를 표시합니다.

pip install --help | head -60

자체

python -m pip --version

Python 모듈로 pip을 실행합니다 — 여러 Python 인터프리터가 있는 시스템에서 직접 `pip`보다 선호됩니다.

python -m pip --version
python -m pip install --upgrade pip

pip을 최신 버전으로 업그레이드합니다. pip이 없는 venv를 부트스트랩하려면 `python -m ensurepip`와 함께 사용하세요.

python -m pip install --upgrade pip
python -m ensurepip --upgrade

pip을 포함하지 않는 virtualenv에 pip을 부트스트랩합니다(PEP 453).

--upgrade; --default-pip

python -m ensurepip --upgrade

설치

pip install <pkg>

기본 인덱스(PyPI)에서 `<pkg>`의 최신 버전을 설치합니다.

<pkg>; -r <req.txt>; -e <path>; -U; --upgrade-strategy only-if-needed|eager; --force-reinstall; --no-deps; --pre 사전 릴리스 포함; --dry-run; --quiet

pip install requests
pip install '<pkg>>=<ver>'

버전 지정자(PEP 440)와 함께 설치합니다. `>=`, `==`, `<`, `~=`, `!=`, `===`를 사용합니다.

pip install 'django>=4.2,<5'
pip install -r requirements.txt

requirements 파일에 나열된 모든 패키지를 설치합니다(줄당 하나의 지정자, `# 주석` 허용).

-r <file>; -c <constraints>; --no-deps; --require-hashes

pip install -r requirements.txt
pip install -e <path>

프로젝트를 편집 / 개발 모드로 설치합니다 — `src/`가 site-packages에 심볼릭 링크되며, 편집이 즉시 반영됩니다.

-e .; -e .[dev]; --no-deps

pip install -e .
pip install '.[dev]'

`pyproject.toml`에 선언된 옵션 extras와 함께 현재 프로젝트를 설치합니다.

pip install '.[dev,docs]'
pip install git+https://github.com/<user>/<repo>.git

Git 리포지터리에서 직접 설치합니다(임의의 ref: 브랜치, 태그, 커밋).

git+https://...; git+ssh://...; @branch; @tag; @commit

pip install 'git+https://github.com/requests/requests.git@main'
pip install <pkg> --index-url <url>

대체 인덱스에서 설치합니다 — 기업 PyPI 미러, JFrog Artifactory, AWS CodeArtifact 등.

pip install <pkg> --index-url https://pypi.org/simple
pip install <pkg> --extra-index-url <url>

기본값과 함께 추가 인덱스를 검색합니다. 원격 가져오기를 완전히 금지하려면 `--no-index`를 사용하세요.

pip install <pkg> --extra-index-url https://my-mirror/simple
pip install --user <pkg>

시스템 Python 대신 사용자 site-packages(`~/.local/`)에 설치합니다.

--user; --target <dir>

pip install --user pipx
pip install --dry-run <pkg>

실제로 설치하지 않고 pip이 무엇을 설치할지 출력합니다 — CI 미리보기에 유용합니다.

--dry-run; --quiet; --report <file>

pip install --dry-run -r requirements.txt

검사

pip list

설치된 패키지를 나열합니다(Name / Version / Location 열).

--format columns|freeze|json; --outdated; --uptodate; --user; --local; --pre; --not-required; --exclude; --include-editable

pip list --format=freeze > freeze.txt
pip list --outdated

사용 가능한 더 새로운 버전이 있는 설치된 패키지를 나열합니다.

--outdated; --format columns|freeze|json

pip list --outdated --format=columns
pip show <pkg>

한 설치된 패키지의 메타데이터를 표시합니다: 버전, 위치, requires, required-by, 요약.

-f 모든 파일 표시; --files 동일; <pkg>...

pip show -f requests
pip check

설치된 패키지의 호환 의존성을 검증합니다 — 깨진 의존성 충돌을 표면화합니다.

pip check
pip freeze

설치된 패키지를 `pkg==ver` 형식으로 출력합니다(정렬, extras 없음) — 표준 requirements.txt 소스입니다.

--local; --user; --all; --exclude; --requirement <file>

pip freeze > requirements.lock

제거

pip uninstall <pkg>

패키지를 제거합니다. 확인 프롬프트를 건너뛰려면 `-y`를 전달하세요.

<pkg>...; -y; -r <file> 나열된 모든 패키지 제거; --dry-run

pip uninstall -y requests
pip uninstall -r requirements.txt -y

requirements 파일에 나열된 모든 패키지를 제거합니다.

pip uninstall -r requirements.txt -y

인덱스

pip download <pkg>

설치하지 않고 wheel / sdist를 디렉터리에 다운로드합니다. 에어-갭 전송에 유용합니다.

-d <dir>; --no-deps; --no-binary :all:; --dest <dir>; --platform

pip download requests -d ./wheels
pip search <query>

이름 / 요약으로 PyPI에서 패키지를 검색합니다(현재 PyPI에 의해 비활성화됨; 대신 웹 UI를 사용하세요).

pip search 'fastapi'
pip wheel <pkg>

프로젝트와 그 의존성의 wheel을 출력 디렉터리에 빌드합니다.

-w <dir>; --no-deps; --no-binary :all:; --no-build-isolation

pip wheel . -w ./wheels
pip cache dir

pip이 다운로드한 파일을 캐시하는 데 사용하는 디렉터리를 출력합니다.

pip cache dir
pip cache purge

pip의 다운로드 캐시를 비웁니다. 손상된 wheel 파일을 고칠 때 유용합니다.

purge; list; info; remove <pattern>; --no-autoremove

pip cache purge
pip config list

활성 설정을 출력합니다(환경 변수 + 사이트 / 글로벌 / 사용자 범위의 INI 파일).

list; edit; get <name>; set <name> <value>; unset <name>; --global; --user; --site

pip config list
pip config set global.index-url <url>

활성 설정 파일에 설정을 영구 저장합니다.

--global; --user; --site; --editor; <name> <value>

pip config set global.index-url https://my-mirror/simple

검사

pip inspect

설치된 모든 패키지의 모든 의존성, 파일, 메타데이터 레코드를 JSON으로 덤프합니다(Dependabot 등이 사용).

pip inspect > installed.json

해시

pip install --require-hashes -r requirements.txt

해시로 고정된 requirements로 설치합니다 — pip은 해시가 일치하지 않는 모든 것을 거부합니다(재현 가능, 변조 방지).

pip install --require-hashes -r requirements.txt
pip hash <file>

`--require-hashes` requirements에 사용할 파일의 SHA-256(기본) 해시를 계산합니다.

<file>; --algorithm sha256|sha384|sha512

pip hash ./mypkg-1.0-py3-none-any.whl

VCS

pip install git+ssh://[email protected]/<user>/<repo>@<ref>

SSH로 설치합니다(2FA 뒤의 비공개 패키지에 유용).

@<branch>; @<tag>; @<commit>

pip install git+ssh://[email protected]/me/[email protected]

Venv 통합

python -m venv .venv

가상 환경을 만듭니다(virtualenv의 Python 표준 라이브러리 대안). 활성화되면 pip이 venv에 자동으로 설치됩니다.

.venv; --system-site-packages; --prompt <name>; --without-pip; --upgrade-deps

python -m venv .venv && source .venv/bin/activate

기타

pip debug --verbose

pip 버전, 지원되는 태그(`cp311-cp311-manylinux_2_28_x86_64`), pip이 설치할 수 있는 Python 버전을 표시합니다.

--verbose

pip debug --verbose | head -40
pip install --upgrade pip setuptools wheel

venv 내부의 빌드 툴체인을 업그레이드합니다 — 소스 배포판이 더 새로운 setuptools를 필요로 할 때 필요합니다.

pip install --upgrade pip setuptools wheel

관련 명령어 치트시트

pip 소개

pip은 표준 Python 패키지 매니저로, 재귀 약자 "pip installs packages"입니다. Ian Bicking가 2008년에 처음 만들었고, Python 2.7.9 / 3.4에서 Python 표준 라이브러리의 기본 설치 도구로 채택되었습니다. pip은 PyPI(Python Package Index)와 호환되는 모든 PEP 503 리포지터리에서 Python 패키지를 설치합니다. 현재 안정 라인은 pip 24+(pip 25.x는 레거시 해석기 경고를 제거함)입니다. pip은 wheel(.whl), 소스 배포판(.tar.gz), VCS URL(`git+https://...`), 로컬 편집 설치(`pip install -e .`)를 지원합니다. 대부분의 워크플로우에서 uv / Poetry / Hatch가 프로젝트 관리를 위해 pip을 대체했지만, pip은 보편적인 폴백으로 남아 있습니다 — 거의 모든 Python 도구의 문서가 `pip install <pkg>`를 가정합니다. pip은 MIT 라이선스로, Python Packaging Authority(PyPA) 산하에서 배포됩니다. pip은 코드를 업로드하지 않으며, 설정된 인덱스에서만 가져옵니다.

치트시트 버전 1.0.0