PIP-INSTALL(1)
π hey bestie, it's PIP-INSTALL(1) time π
okay so. this is the manual page for the pip install command β like, the single most iconic thing you will ever type into a terminal. it's the main character of your dev environment, fr fr. let's get into it π«Ά
πΈ NAME πΈ
pip-install β literally just the whole description of the pip install command. that's it. that's the name. slay.
β¨ DESCRIPTION β¨
bestie, pip install can pull packages in from a bunch of places. like, a whole menu:
- PyPI (and other indexes too, iykyk) using requirement specifiers.
- VCS project urls.
- Local project directories.
- Local or remote source archives.
and on top of all that, pip also supports installing from "requirements files", which are genuinely the easiest way to describe a whole entire environment that you want installed at once. one file, whole vibe, done. π
π USAGE π
here's the shape of it, all five flavors:
python -m pip install [options] <requirement specifier> [package-index-options] ...
python -m pip install [options] -r <requirements file> [package-index-options] ...
python -m pip install [options] [-e] <vcs project url> ...
python -m pip install [options] [-e] <local project path> ...
python -m pip install [options] <archive url/path> ...
pick your fighter. π
π OPTIONS π
this is the long part and honestly? every single one of these matters. no skimming, bestie.
-r,--requirement<file> β Install from the given requirements file. you can use this option multiple times if you're feeling extra. (environment variable:PIP_REQUIREMENT)-c,--constraint<file> β Constrain versions using the given constraints file. also usable multiple times. (environment variable:PIP_CONSTRAINT)--build-constraint<file> β Constrain build dependencies using the given constraints file. yep, multiple times again. (environment variable:PIP_BUILD_CONSTRAINT)--requirements-from-script<file> β Install dependencies of the given script file as defined by PEP 723 inline metadata. (environment variable:PIP_REQUIREMENTS_FROM_SCRIPT)--no-depsβ Don't install package dependencies. just the one thing, nothing riding along. (environment variable:PIP_NO_DEPS,PIP_NO_DEPENDENCIES)-e,--editable<path/url> β Install a project in editable mode (i.e. setuptools "develop mode") from a local project path or a VCS url. the classic "I'm editing this as I go" move. (environment variable:PIP_EDITABLE)--dry-runβ Don't actually install anything, just print what would be. can be used in combination with--ignore-installedto 'resolve' the requirements. window shopping, basically. (environment variable:PIP_DRY_RUN)-t,--target<dir> β Install packages into <dir>. by default this will not replace existing files/folders in <dir>. use--upgradeto replace existing packages in <dir> with new versions. (environment variable:PIP_TARGET)--platform<platform> β Only use wheels compatible with <platform>. defaults to the platform of the running system. use this option multiple times to specify multiple platforms supported by the target interpreter. (environment variable:PIP_PLATFORM)--python-version<python_version> β The Python interpreter version to use for wheel and "Requires-Python" compatibility checks. defaults to a version derived from the running interpreter. you can specify it with up to three dot-separated integers (e.g."3"for3.0.0,"3.7"for3.7.0, or"3.7.3"). a major-minor version can also be given as a string without dots (e.g."37"for3.7.0). (environment variable:PIP_PYTHON_VERSION)--implementation<implementation> β Only use wheels compatible with Python implementation <implementation>, e.g.'pp','jy','cp', or'ip'. if not specified, then the current interpreter implementation is used. use'py'to force implementation-agnostic wheels. (environment variable:PIP_IMPLEMENTATION)--abi<abi> β Only use wheels compatible with Python abi <abi>, e.g.'pypy_41'. if not specified, then the current interpreter abi tag is used. use this option multiple times to specify multiple abis supported by the target interpreter. generally you will need to specify--implementation,--platform, and--python-versionwhen using this option. (environment variable:PIP_ABI)--userβ Install to the Python user install directory for your platform. typically~/.local/, or%APPDATA%Pythonon Windows. (see the Python documentation forsite.USER_BASEfor full details.) (environment variable:PIP_USER)--root<dir> β Install everything relative to this alternate root directory. (environment variable:PIP_ROOT)--prefix<dir> β Installation prefix wherelib,binand other top-level folders are placed. note that the resulting installation may contain scripts and other resources which reference the Python interpreter of pip, and not that of--prefix. see also the--pythonoption if the intention is to install packages into another (possibly pip-free) environment. (environment variable:PIP_PREFIX)--src<dir> β Directory to check out editable projects into. the default in a virtualenv is"<venv path>/src". the default for global installs is"<current dir>/src". (environment variable:PIP_SRC,PIP_SOURCE,PIP_SOURCE_DIR,PIP_SOURCE_DIRECTORY)-U,--upgradeβ Upgrade all specified packages to the newest available version. the handling of dependencies depends on the upgrade-strategy used. (environment variable:PIP_UPGRADE)--upgrade-strategy<upgrade_strategy> β Determines how dependency upgrading should be handled [default:only-if-needed]."eager"β dependencies are upgraded regardless of whether the currently installed version satisfies the requirements of the upgraded package(s)."only-if-needed"β upgraded only when they do not satisfy the requirements of the upgraded package(s). (environment variable:PIP_UPGRADE_STRATEGY)--force-reinstallβ Reinstall all packages even if they are already up-to-date. (environment variable:PIP_FORCE_REINSTALL)-I,--ignore-installedβ Ignore the installed packages, overwriting them.
β οΈ bestie this one is serious β it can break your system if the existing package is of a different version or was installed with a different package manager! π
(environment variable: PIP_IGNORE_INSTALLED)
--ignore-requires-pythonβ Ignore theRequires-Pythoninformation. (environment variable:PIP_IGNORE_REQUIRES_PYTHON)--no-build-isolationβ Disable isolation when building a modern source distribution. build dependencies specified by PEP 518 must already be installed if this option is used. (environment variable:PIP_NO_BUILD_ISOLATION)--check-build-dependenciesβ Check the build dependencies. (environment variable:PIP_CHECK_BUILD_DEPENDENCIES)--break-system-packagesβ Allow pip to modify anEXTERNALLY-MANAGEDPython installation. (environment variable:PIP_BREAK_SYSTEM_PACKAGES)-C,--config-settings<settings> β Configuration settings to be passed to the build backend. settings take the formKEY=VALUE. use multiple--config-settingsoptions to pass multiple keys to the backend. (environment variable:PIP_CONFIG_SETTINGS)--compileβ Compile Python source files to bytecode. (environment variable:PIP_COMPILE)--no-compileβ Do not compile Python source files to bytecode. (environment variable:PIP_NO_COMPILE)--no-warn-script-locationβ Do not warn when installing scripts outsidePATH. (environment variable:PIP_NO_WARN_SCRIPT_LOCATION)--no-warn-conflictsβ Do not warn about broken dependencies. (environment variable:PIP_NO_WARN_CONFLICTS)--require-hashesβ Require a hash to check each requirement against, for repeatable installs. this option is implied when any package in a requirements file has a--hashoption. (environment variable:PIP_REQUIRE_HASHES)--progress-bar<progress_bar> β Specify whether the progress bar should be used. in'auto'mode,--quietwill suppress all progress bars. [auto,on,off,raw] (default:auto) (environment variable:PIP_PROGRESS_BAR)--root-user-action<root_user_action> β Action if pip is run as a root user [warn,ignore] (default:warn) (environment variable:PIP_ROOT_USER_ACTION)--report<file> β Generate a JSON file describing what pip did to install the provided requirements. can be used in combination with--dry-runand--ignore-installedto 'resolve' the requirements. when-is used as file name it writes to stdout. when writing to stdout, please combine with the--quietoption to avoid mixing pip logging output with JSON output. (environment variable:PIP_REPORT)--group<[path:]group> β Install a named dependency-group from a"pyproject.toml"file. if a path is given, the name of the file must be"pyproject.toml". defaults to using"pyproject.toml"in the current directory. (environment variable:PIP_GROUP)--no-cleanβ Don't clean up build directories. (environment variable:PIP_NO_CLEAN)
π¦ Author π¦
pip developers β the collective, the icon, the legend. π«Ά
π Copyright π
The pip developers.
and that's the whole page bestie!! β¨ this was PIP-INSTALL(1), version 26.0, dated Aug 26, 2026, from the fine folks at pip. go install something cute, and remember: read the flags before you break your system. mwah π
ππ
π¦ where this page comes from
- fedora 44: python3-pip 26.0.1-3.fc44 Β· MIT AND Python-2.0.1 AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MPL-2.0 AND (Apache-2.0 OR BSD-2-Clause)
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms