包管理工具npm与pnpm

什么是NPM?

npm是一个JavaScript包管理工具,能够允许开发者轻松地下载、安装、共享、管理项目的依赖库和工具,是node.js自带的包管理工具,因此,你需要先安装Node.js

安装node.js

直接到官网进行下载即可,下载完成后,在终端运行

shell 复制代码
node -v

NPM的主要功能

包管理

安装各种第三方库,像vue、axios、React等等。

node.js 复制代码
npm install vue

因为npm官方本身是外网的,国内下载非常慢,需要修改下载镜像------一般使用淘宝的镜像

node.js 复制代码
npm install -g cnpm --registry=https://registry.npmmirror.com

package.json的说明与使用

主要作用:用于描述项目的元数据和依赖关系,一般位于项目的根目录,是项目的配置文件

json 复制代码
{
 "name"://项目名称
 "version"://项目的版本号
 "description"://项目的简要描述
 "main"://项目的入口文件
 "script":{//可执行脚本命令
 }
 "dependencies":{//项目需要依赖库
 }
 "devDependencies":{//开发环境的依赖库,不会在生产环境中安装
 }
 "keywords"://关键字,有助于项目在NPM搜索中找到项目
 "author"://作者信息
 "license"://项目的许可证类型
}

版本管理

可以根据项目情况安装低版本的依赖,也可以进行版本的锁定,或者更新最新的版本。

版本号遵循语义化版本控制(SemVer)

1. 版本格式

  • 结构MAJOR.MINOR.PATCH(主版本号.次版本号.修订号)

    • MAJOR:不兼容的API变更时递增。

    • MINOR:向下兼容的功能新增时递增。

    • PATCH:向下兼容的问题修复时递增。

2. 核心规则

  • 0.y.z(初始阶段):视为不稳定版本,MINOR的变化可能包含破坏性变更。

  • 版本不可修改:发布后内容不可更改,需通过新版本号修复问题。

  • 公共API定义:版本变更基于用户可见的API变动,需明确界定接口范围。

3. 预发布与构建元数据

  • 预发布版本 :追加连字符标识(如1.0.0-alpha.1),优先级低于正式版。

  • 构建元数据 :加号后添加信息(如1.0.0+build.123),不影响版本优先级。

4. 版本比较规则

  • 优先级顺序:1.0.0 < 1.0.1 < 1.1.0 < 2.0.0

  • 预发布版本低于正式版(如1.0.0-beta < 1.0.0)。

5. 应用场景示例

  • PATCH升级 :修复Bug(如1.0.0 → 1.0.1)。

  • MINOR升级 :新增兼容功能(如1.0.1 → 1.1.0)。

  • MAJOR升级 :破坏性变更(如1.1.0 → 2.0.0)。

包发布

开发者可以自己制作npm库后发布到npm仓库中,供其他开发者下载使用。

命令行工具

npm常用命令

node.js 复制代码
npm init -y //初始化一个新的带有默认设置的package.json文件

npm install package-name //本地安装指定包

npm update package-name //更新指定的依赖包

npm uninstall package-name //卸载指定的依赖包

npm list //查看当前项目以安装的依赖包列表

npm login //登录到npm账号

npm publish //发布当前包到npm注册表中

npm run start //运行start脚本,其他脚本类推

PNPM

项目初衷------节省磁盘空间

使用 npm 时,依赖每次被不同的项目使用,都会重复安装一次。 而在使用 pnpm 时,依赖会被存储在内容可寻址的存储中,如果你用到了某依赖项的不同版本,只会将不同版本间有差异的文件添加到仓库。所有文件都会存储在硬盘上的某一位置。

安装

在Windows上

使用 PowerShell:

PowerShell 复制代码
Invoke-WebRequest https://get.pnpm.io/install.ps1 -UseBasicParsing | Invoke-Expression

使用 npm:

node.js 复制代码
npm install -g pnpm@latest-10

使用 HomeBrew:

node.js 复制代码
brew install pnpm

命令

node.js 复制代码
pnpm add sax//安装软件包及其依赖的任何软件包。

pnpm i || install// 用于安装项目的所有依赖项。

pnpm up || update//更新所有依赖项。

pnpm rm || remove//删除软件包。

pnpm rebuild || rb//重新构建软件包。

pnpm audit --fix//检查已安装程序包的已知安全问题。

pnpm list || ls//此命令将以树结构的形式输出已安装的所有软件包的版本以及及其依赖项。

pnpm run "script"//运行在软件包清单文件中定义的脚本,可以把run省略。

pnpm create *//从 `create-*` 或 `@foo/create-*` 启动套件创建一个项目。
相关推荐
CodeCipher13 分钟前
前端Vue3列表滑动无限加载实现
前端·javascript·vue.js·vue
十碗饭吃不饱40 分钟前
vue修改配置文件.env.development不生效
前端·javascript·vue.js
老神在在0012 小时前
javaEE1
java·开发语言·学习·java-ee
二十雨辰3 小时前
[CSS3]vw/vh移动适配
前端·css·css3
Catfood_Eason3 小时前
HTML5基础
前端·html·html5
软件开发技术深度爱好者3 小时前
用HTML5+JavaScript实现汉字转拼音工具
前端·javascript·html5
Always_away3 小时前
26考研|高等代数:λ-矩阵
笔记·学习·线性代数·矩阵
DevangLic3 小时前
ffmpeg baidu
人工智能·pytorch·python·学习·ai·ffmpeg
图梓灵3 小时前
Maven与Spring核心技术解析:构建管理、依赖注入与应用实践
java·笔记·spring·maven
pop_xiaoli4 小时前
OC—UI学习-1
学习·ui·objective-c