系统级包管理
操作系统层面的软件包管理工具。
- Homebrew —
特点
- macOS 和 Linux 上最流行的包管理器
- 一行命令安装几乎所有开源软件
- 使用 Ruby 编写,社区生态极其丰富
- 支持 cask 安装图形界面应用
- 自动处理依赖和更新
- apt —
特点
- Debian / Ubuntu 系统的高级包管理工具
- 基于 dpkg 之上,自动解决依赖关系
- 使用软件源仓库分发软件包
- 支持搜索、安装、升级、卸载一站式操作
Link to original查看
tldr apt - dpkg —
特点
- Debian / Ubuntu 系统的底层包管理工具
- 直接操作 .deb 软件包文件
- 不自动解决依赖,通常配合 apt 使用
- 适合离线安装单个 deb 包的场景
- yum —
特点
- CentOS / RHEL / Fedora 等系统的默认包管理器
- 基于 RPM 包格式,自动解决依赖关系
- 使用软件仓库(repository)管理软件源
- 已被 dnf 逐步取代,但仍在大量生产环境中使用
Windows 包管理
Windows 平台专用的命令行安装工具。
- Scoop —
特点
- Windows 上的命令行包管理器
- 无需管理员权限即可安装软件
- 安装路径统一管理,不污染系统环境
- 适合开发者快速搭建开发环境
- 软件更新简单,支持版本切换
Scoop 是一款 Windows 操作系统的 CLI 安装器
Link to original - Chocolatey —
特点
- Windows 上最成熟的包管理器之一
- 支持 GUI 和 CLI 两种安装方式
- 社区仓库软件数量庞大
- 支持企业部署和内部仓库
- 适合批量部署 Windows 开发环境
Python 包管理
Python 生态中多种依赖管理和虚拟环境工具。
- pip —
特点
- Python 官方推荐的包安装工具
- 从 PyPI 安装和管理 Python 包
- 支持 requirements.txt 批量安装
- 支持虚拟环境隔离依赖
- 与 Python 捆绑安装,开箱即用
- uv —
特点
- 用 Rust 编写的极速 Python 包管理器
- 比 pip 快 10~100 倍
- 同时支持 pip 和 Poetry 的依赖解析
- 内置虚拟环境管理,无需额外工具
- Astral 公司出品,与 ruff 同源
- Poetry —
特点
- Python 的现代依赖管理和打包工具
- 统一管理依赖、虚拟环境和打包发布
- 使用 pyproject.toml 作为唯一配置文件
- 锁定文件确保环境可复现
- 比 pip + venv 更简洁的工作流
- Conda —
特点
- 跨平台的语言和软件包管理器
- 不仅支持 Python,还支持 R、Ruby、Lua 等
- 内置虚拟环境管理(conda env)
- 数据科学领域的事实标准(Anaconda / Miniconda)
- 支持二进制包分发,无需编译
JavaScript 包管理
Node.js 和前端项目的依赖管理工具。
- npm —
特点
- Node.js 官方默认的包管理器
- 全球最大的 JavaScript 软件包仓库
- 支持语义化版本控制
- npm scripts 可替代简单的构建工具
- 随 Node.js 安装,开箱即用
- pnpm —
特点
- Node.js 的高性能包管理器
- 基于内容寻址存储,磁盘空间占用极小
- 严格的依赖隔离,避免幽灵依赖
- 支持 monorepo 工作区管理
- 兼容 npm 生态,迁移成本低
Rust 包管理
- Cargo —
特点
- Rust 官方构建工具和包管理器
- 基于 crates.io 社区仓库托管依赖
- 内置编译、测试、文档生成等完整工作流
- 语义化版本管理,自动处理依赖冲突
- 跨平台支持,项目配置简洁(Cargo.toml)