npm、cnpm、pnpm和yarn使用(官网、安装、命令行、上传自己的包、包版本号详解、更新卸载包、查看所有版本、同等依赖peer、可选依赖optional)

目录

npm

官网

npm install packageName

npm i packagename@版本号

安装git上发布的包

npm ci

注意(对比npm i)

npm outdated

npm update

npm init -y

 npm list

npm list | grep packageName

npm install --production

npm view packagename versions

npm config get registry

npm config set registry https://registry.npm.taobao.org

上传自己的包

npm adduser

npm publish

cnpm

安装

缺点

pnpm

安装

相关概念 

硬链接(Hard Link)

软连接(Symbolic Link)

存储方式

官网与详细介绍

yarn

中文官网

安装

命令行

yarn add packageName@版本号

yarn|yarn install

yarn upgrade packageName@版本号

yarn remove packageName

yarn dlx mocha --version


npm

NodeJS包管理和分发工具。

官网

npm

npm install packageName

安装依赖包。

--S(--save):默认的,用于写入package.json生产环境文件。

-D(--save-dev):用于写入package.json的开发环境文件。

-g(-global):全局安装,非-g的都为局部安装。下面是-g安装目录

mac全局安装目录为/User/你的用户名/.nvm/versions/node/nvm版本/bin

window全局安装目录为C:\Users\你的用户名\AppData\Roaming\npm\node_modules

局部安装通过node_modulet/.bin/packageName运行非-g下载的模块命令。

npm i packagename@版本号

自动安装指定版本的包,除指定的版本号,其余版本号自动取最新的。

版本号包括:主版本号.次版本号.补丁号

package.json中^指锁定主版本号,~指锁定主版本号和次版本号,空指锁定整个版本号,*指取最新版本

安装git上发布的包

# 这样适合安装公司内部的git服务器上的项目
npm install git+https://git@github.com:lurongtao/gp-project.git

# 或者以ssh的方式
npm install git+ssh://git@github.com:lurongtao/gp-project.git

下图红框是通过git安装的包

 

npm ci

根据package-lock.json(npm i后生成的文件,用于锁定版本和记录依赖)文件安装依赖。相比npm i速度提升明显。也支持--production参数。

注意(对比npm i)

  • npm ci 不能用来安装单个依赖,只能用来安装整个项目的依赖
  • npm ci 会检测如果 node_modules 已经存在,则先删除再进行安装操作
  • 不会更新 package.json 或 package-lock.json 文件,整个安装过程是锁死的。
  • package-lock.json 、npm-shrinkwrap.json 文件都不存在会报错
  •  lock 与 package.json 中版本不匹配,npm ci 直接报错中断,而不是更新 lock 文件。

推荐使用:npm ci --cache .npm --quiet --no-progress 关闭log和进度,可加快下载。

npm outdated

显示package.json中锁定版本位下其它版本位不是最新的包。

npm update

将package.json中包的锁定版本位下的其它版本位为变为最新的。

npm init -y

生成package.json模块配置文件。

### npm npm 是 Node.js 的默认管理器,用于安装、管理共享 JavaScript 。 - **安装方式**:npm 通常随 Node.js 一起安装。可以通过访问 [Node.js 官方网站](https://nodejs.org/) 下载并安装 Node.js,npm 将自动含在内。 - **常用命令**: - `npm install <package-name>`:安装指定。 - `npm install -g <package-name>`:全局安装指定。 - `npm update <package-name>`:更新指定。 - `npm uninstall <package-name>`:卸载指定。 ### cnpm cnpmnpm 的镜像版本,专为中国用户设计,以提高下载速度。 - **安装方式**: - 使用 npm 安装 cnpm:`npm install -g cnpm` - **常用命令**: - `cnpm install <package-name>`:安装指定。 - `cnpm install -g <package-name>`:全局安装指定。 - `cnpm update <package-name>`:更新指定。 - `cnpm uninstall <package-name>`:卸载指定。 ### Yarn Yarn 是由 Facebook 开发的管理器,旨在解决 npm 的性能安全性问题。 - **安装方式**: - 使用 npm 安装 Yarn:`npm install -g yarn` - 或者使用独立安装脚本: ```bash curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt-get update && sudo apt-get install yarn ``` - **常用命令**: - `yarn add <package-name>`:安装指定。 - `yarn global add <package-name>`:全局安装指定。 - `yarn upgrade <package-name>`:更新指定。 - `yarn remove <package-name>`:卸载指定。 ### pnpm pnpm 是一个快速、节省磁盘空间的管理器,它通过硬链接符号链接来共享依赖项。 - **安装方式**: - 使用 npm 安装 pnpm:`npm install -g pnpm` - 使用 npx 安装 pnpm:`npx pnpm add -g pnpm` - **常用命令**: - `pnpm add <package-name>`:安装指定。 - `pnpm add -g <package-name>`:全局安装指定。 - `pnpm update <package-name>`:更新指定。 - `pnpm remove <package-name>`:卸载指定。 ### nvm nvm(Node Version Manager)是一个用于管理多个 Node.js 版本的工具。 - **安装方式**: - 使用 curl 安装 nvm: ```bash curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash ``` - 或者使用 wget 安装 nvm: ```bash wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash ``` - 安装完成后,重新加载 shell 配置文件(如 `.bashrc` 或 `.zshrc`):`source ~/.bashrc` - **常用命令**: - `nvm ls-remote`:列出所有可用的 Node.js 版本。 - `nvm install <version>`:安装指定版本的 Node.js。 - `nvm use <version>`:切换到指定版本的 Node.js。 - `nvm alias default <version>`:设置默认使用的 Node.js 版本。 ### 区别 1. **npm** 是 Node.js 的默认管理器,功能全面但有时会遇到性能瓶颈,尤其是在中国用户群体中。 2. **cnpm** 是 npm 的镜像版本,专门为提高国内用户的下载速度而设计,使用方式与 npm 类似。 3. **Yarn** 提供了更快的安装速度更好的依赖管理机制,支持并行下载确定性安装。 4. **pnpm** 通过硬链接符号链接技术,显著减少了磁盘空间占用,并且保持了与 npm 兼容的 API。 5. **nvm** 不是管理器,而是用于管理不同版本 Node.js 的工具,允许在同一台机器上轻松切换不同的 Node.js 版本。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值