npm、cnpm、yarn三剑客

npm,cnpm,yarn这三个或许使用Hexo,Hugo,vuepress等静态博客搭建的小伙伴们来说,会经常遇见,会使用它们进行插件,依赖包等的安装、卸载与更新,如果你是前端开发者或者是准备从事前端的话,你会经常与它们三个打交道,下面简单的说说它们三剑客吧!

npm是什么?

npm 为你和你的团队打开了连接整个 JavaScript 天才世界的一扇大门。它是世界上最大的软件注册表,每星期大约有 30 亿次的下载量,包含超过 600000 个 包(package) (即,代码模块)。来自各大洲的开源软件开发者使用 npm 互相分享和借鉴。包的结构使您能够轻松跟踪依赖项和版本。引自npm中文网

npm (node package manager)是 JavaScript 世界的包管理工具,是 Node.js 平台的默认包管理工具,是前端模块化下的一个标志性产物,简单地说,就是通过npm下载模块,复用已有的代码,提高工作效率。

下面是关于 npm 的快速介绍:

npm 由三个独立的部分组成:

  • 网站
  • 注册表(registry)
  • 命令行工具 (CLI)

网站 是开发者查找包(package)、设置参数以及管理 npm 使用体验的主要途径。

注册表 是一个巨大的数据库,保存了每个包(package)的信息。

CLI 通过命令行或终端运行。开发者通过 CLI 与 npm 打交道。

npm常用命令

  1. 查看npm的版本
npm -v #npm -version
  1. 查看npm帮助
# 查看所有的命令帮助
npm help
# 如果要单独查看install命令的帮助,可以使用下面的命令
npm help install
  1. 查看安装过的所有包
npm list #列出当前安装过的所有包
#或者简写
npm ls
npm ls -g #查看全局安装的模块及依赖 
  1. 本地安装依赖包和全局安装(global)
#安装nodejs的依赖包,默认安装最新版本(本地)
npm install <Package name>
#一次性安装多个(本地)
npm install 模块名 模块名
#安装指定版本号的依赖包(本地)
npm install <Package name>@version
#将包安装到全局环境中
npm install <Package name> -g
# 根据package.json文件安装
npm install
  1. 卸载依赖包
npm  uninstall <Package name>
npm uninstall gulp --save-dev #卸载开发版本的模块
  1. 安装生产阶段的依赖包

-S, - -save 安装包信息将加入到dependencies(生产阶段的依赖)

npm install gulp --save 或 npm install gulp -S

package.json文件的 dependencies 字段:

"dependencies": {
    "gulp": "^4.0.2"
}
  1. 安装开发阶段的依赖包

-D, --save-dev 安装包信息将加入到devDependencies(开发阶段的依赖),所以开发阶段一般使用它

npm install gulp --save-dev 或 npm install gulp -D

package.json 文件的devDependencies字段:

"devDependencies": {
    "gulp": "^4.0.2"
}
  1. 安装可选阶段的依赖包

-O, --save-optional 安装包信息将加入到optionalDependencies(可选阶段的依赖)

npm install gulp --save-optional 或 npm install gulp -O

package.json文件的optionalDependencies字段:

"optionalDependencies": {
    "gulp": "^4.0.2"
}
  1. 精确安装指定版本依赖包

-E, --save-exact 精确安装指定模块版本

npm install gulp --save-exact 或 npm install gulp -E

输入命令npm install gulp -ES留意package.json 文件的 dependencies字段,以看出版本号中的^**消失了。

"dependencies": {
    "gulp": "4.0.2"
}

模块的依赖都被写入了package.json文件后,他人打开项目的根目录(项目开源、内部团队合作),使用npm install命令可以根据dependencies配置安装所有的依赖包。

npm install

注意:

npm 的package.json中的~和^

  • ~ 会匹配最近的小版本依赖包,比如~1.2.3会匹配所有1.2.x版本,但是不包括1.3.0
  • ^ 会匹配最新的大版本依赖包,比如^1.2.3会匹配所有1.x.x的包,包括1.3.0,但是不包括2.0.0
  1. 更新依赖包
npm update <Package name>
  1. 检查哪些依赖包是否过时
npm outdated

执行上面的命令,会出现如下情况:

另外有个检查依赖包更强大的一个第三方工具 npm-check,具体使用方法,请查看它的文档。

  1. 查看和管理npm的基础配置
npm config list -l  #查看所有的配置
  1. 清除本地npm cache缓存
npm cache clean
  1. 初始化项目
npm init #初始化项目,并在项目文件夹中引导创建一个package.json文件

其他npm命令可以看NPM中文文档

cnpm是什么?

简单的讲就是中国版的NPM,因为npm安装插件是从国外服务器下载,受网络影响大,可能出现异常,所以我们乐于分享的淘宝团队干了这事。

这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。—来自淘宝 NPM 镜像

如何使用cnpm?

首先就是需要安装cnpm模块,命令如下:

npm install -g cnpm --registry=https://registry.npm.taobao.org

cnpm支持可以使用支持npmpublish之外的所有命令。

因为cnpm的仓库只是 npm 仓库的一个拷贝,它不承担 publish 工作,所以执行cnpm publish 命令会失败的。

yarn是什么?

yarn是个包管理器。你可以通过它使用全世界开发者的代码, 或者分享自己的代码。

npm 安装软件包并保持相同的包管理流程。

  1. 特点:
  • 速度超快。

Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。

  • 超级安全

在执行代码之前,Yarn 会通过算法校验每个安装包的完整性。

  • 超级可靠

使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作。

  1. 安装
  • 通过命令安装
npm install -g yarn

查看版本:yarn --version

  • 通过安装包程序安装

地址:https://classic.yarnpkg.com/zh-Hans/docs/install#windows-stable

  1. 常用命令:
  • yarn init:初始化项目,会在根目录下生成一个package.json,与npm类似具体不做解释
  • yarn add <Package name>:安装依赖包,会自动安装最新版本,会覆盖指定版本号
  • yarn add <Package name1> <Package name1>:一次性添加多个包
  • yarn add <Package name>@version:添加指定版本的包
  • yarn upgrade <Package name>@version:将包更新到指定版本
  • yarn upgrade --latest <Package name>:将包更新到最新版本
  • yarn remove <Package name>:删除包
  • yarn remove <Package name1> <Package name2>:一次性删除多个包
  • yarn info <Packagename> :可以用来查看某个模块的最新版本信息
  • yarn install:安装package.json里所有包,并将包及它的所有依赖项保存进yarn.lock
  • yarn install --force :强制重新下载所有包
  • yarn install --flat:安装一个包的单一版本
  • yarn install --production:只安装dependencies里的包
  • yarn install --no-lockfile:不读取或生成yarn.lock
  • yarn install --pure-lockfile:不生成yarn.lock

具体详细的命令可以查看官方文档:https://classic.yarnpkg.com/zh-Hans/docs

原文地址:https://www.cnblogs.com/yafine/p/12300946.html

时间: 2024-10-22 19:08:52

npm、cnpm、yarn三剑客的相关文章

npm,cnpm,yarn

指令(来源于:指令对比) 全局卸载                             npm  uninstall -g                                                              yarn global remove  查看安装                            npm list -g --depth=0                                                   

大话npm,cnpm和yarn

npm:基于node.js的包管理工具; 常用命令 npm install 包名; 缺点:因服务器在国外,所以下载包的速度超级慢,所以出现了cnpm和yarn cnpm:跟npm是一样的,这是淘宝出的下载工具,服务器在国内,所以下载速度npm快很多; cnpm install 包名 安装cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org yarn:有些脚手架不支持cnpm,npm下载速度太慢,所以出现了yarn

关于npm和yarn安装node-sass失败并且依旧想使用NPM或者yarn的完美解决方案

由于某些不可描述的原因,利用npm进行安装模块的时候会发生xxx下载失败的情况node-sass尤其的频繁,或者说node-sass的二进制文件是接近百分百失败的,即使用yarn安装也依旧在这个点失败,有人说用cnpm就好了,这确实是最好的解决方案,但是总会有不同需求的(比如我-.-),不喜欢用cnpm而喜欢用npm或者yarn,那么该怎么办呢?以下是完美的解决方案: 首先我们需要把node-sass的二进制文件下载到本地来,这个文件可以选择去官方的github上下载或者去淘宝镜像官网下载,在下

安装使用yarn,使用国内镜像加速npm和yarn

安装yarn https://yarnpkg.com/lang/zh-hans/docs/install/ 使用国内镜像加速npm和yarn 1. npm config set registry=https://registry.npm.taobao.org 2. yarn config set registry https://registry.npm.taobao.org 3. 下载cnpm:npm install -g cnpm --registry=https://registry.np

关于npm和yarn 安装vue脚手架

第一篇博客有点小紧张.轻喷~ 第一步:安装node.js       地址 --------https://nodejs.org/en/ 详细步骤这里就不写了    可以去看     地址 --------https://jingyan.baidu.com/article/48b37f8dd141b41a646488bc.html 第二步:下载完了之后进入cmd  输入node -v查看版本号 看到上面表示安装成功.node.js是自带npm的,直接npm install -g @vue/cli

node.js 和 npm/cnpm/nrm 的安装

node.js 和 npm/cnpm/nrm 的安装 安装 node.js.去 官网 下载,下载 LTS 版本的.安装时一路点确定,不要改动任何设置. 在 git-bash 或是 cmd 下,输入 node -v,查看 node 的版本,检验 node 是否安装成功.然后输入 npm -v,查看 npm 的版本. node.js 内置了 npm. 去 淘宝 NPM 镜像官网,在"使用说明"一栏下复制这一句 1 npm install -g cnpm --registry=https:/

npm、yarn 简单使用记录

npm.yarn常用命令记录,后续会陆续补充... 经过使用发现yarn再下包是速度快,所以日常以yarn指令应用为主 npm查看仓库地址:npm config get registrynpm设置淘宝镜像:npm config set registry http://registry.npm.taobao.org/npm还原仓库地址:npm config set registry https://registry.npmjs.org/ yarn查看仓库地址:yarn config get reg

npm 还是 yarn ?

技术选型时这个问题总是困扰我,今天看到一篇文章,详细的解释了 npm 和 yarn 在性能,安全,支持性和使用难易度上的区别,看完之后这个问题终于有一个答案: 如果你在意速度和 UI,选 yarn,如果你是个保守派,选 npm 会更加合适. 文章地址:https://stackshare.io/stackups/npm-vs-yarn 性能 无论是在无缓存项目中(没有 nodemodules 目录),还是在有缓存项目中,yarn 都比 npm 快,2 分钟或十几秒,而且 yarn 还支持离线下载

npm和yarn的源、代理设置

npm和yarn转换淘宝源和官方源 12345 npm config set registry http://registry.npm.taobao.org/npm config set registry https://registry.npmjs.org/ yarn config set registry http://registry.npm.taobao.org/yarn config set registry https://registry.npmjs.org/ npm 设置代理 1

npm和yarn更改依赖包全局下载和缓存路径

1.在 D盘新建一个目录,用来存放 npm 或 yarn 的 cache 和 依赖包文件 我这里新建的文件夹如下: D:\node_package\npm D:\node_package\npm_cache D:\node_package\yarn D:\node_package\yarn_cache 2.更改npm  和 yarn  的配置 # npm npm config set prefix "D:\node_package\npm" npm config set cache &