npm常用命令

npm(Node Package Manager)是Node.js生态系统中不可或缺的部分,它负责软件包的管理,包括安装、更新、卸载以及版本控制等功能。下面是一些常用的npm命令及其实际应用场景的详解:

初始化项目

  • 命令 :npm init 或 npm init -y
    • 说明 :创建一个package.json文件,用于存储项目的元数据和依赖关系。使用-y参数会接受所有默认值快速初始化。

安装依赖

  • 命令 :npm install <package> 或 npm i <package>
    • 说明 :安装指定的npm包。如果想要安装特定版本,可以使用@<version>,如npm install express@4.17.1。
    • 参数 :
      • -S 或 --save:将包添加到dependencies列表,用于生产环境。
      • -D 或 --save-dev:将包添加到devDependencies列表,用于开发环境。
      • -E 或 --save-exact:精确保存包的确切版本号。

卸载依赖

  • 命令 :npm uninstall <package>
    • 说明 :从项目中移除指定的npm包,并从package.json中删除相关条目。

更新依赖

  • 命令 :npm update [package]
    • 说明:更新指定的npm包或所有包到最新版本。不指定包名时,默认更新所有。

查看依赖

  • 命令 :npm list 或 npm ls
    • 说明:显示项目中已安装的依赖包及其版本,包括子依赖。

运行脚本

  • 命令 :npm run <script-name>
    • 说明 :执行package.json中的脚本。例如,npm run start通常用于启动开发服务器。

查看包信息

  • 命令 :npm view <package> [property]
    • 说明:查看npm仓库中某个包的详细信息,可选地查看特定属性,如版本或依赖。

发布包

  • 命令 :npm publish
    • 说明:将当前目录下的包发布到npm注册表。确保已登录npm账号且满足发布条件。

全局命令

  • 安装 :npm install -g <package>
    • 卸载 :npm uninstall -g <package>
    • 说明 :全局安装或卸载npm包,这些包通常是命令行工具,如create-react-app。

缓存管理

  • 清理缓存 :npm cache clean --force
    • 说明:强制清理npm的缓存,解决因缓存引起的安装问题。

版本控制

  • 命令 :npm version <patch|minor|major>
    • 说明 :在package.json中自动递增版本号。patch小版本,minor中版本,major大版本。

搜索包

  • 命令 :npm search <keyword>
    • 说明:根据关键词搜索npm仓库中的包。

链接本地包

  • 命令 :npm link
    • 说明:在开发本地模块时,此命令可以创建一个符号链接,使得你可以在其他项目中如同安装的模块一样使用这个本地模块,便于快速迭代和测试。

链接到全局包

  • 命令 :在模块目录下执行npm link,然后在使用该模块的项目中执行npm link <module-name>
    • 说明:允许你在全局安装的模块和本地项目之间建立链接,便于调试全局模块。

使用npm脚本别名

  • 在package.json中定义脚本时,可以使用"scripts": {"alias": "command-to-run"}
    • 说明 :这允许你为复杂的命令或频繁执行的任务创建简短的别名,例如"start": "node server.js"。

查看npm配置

  • 命令 :npm config list
    • 说明:显示npm的当前配置,包括全局设置和用户特定设置。这有助于诊断权限、代理设置或注册表来源问题。

更改registry源

  • 命令 :npm config set registry https://registry.npmjs.org/
    • 说明 :更改npm下载包的源地址。在中国,可能需要更改为淘宝镜像源https://registry.npm.taobao.org/以加速下载。

安装并保存为开发依赖

  • 命令 :npm install --save-dev <package>
    • 说明 :安装包的同时,将其添加到devDependencies中,适用于那些只在开发和构建过程中需要的包。

查看过时的依赖

  • 命令 :npm outdated
    • 说明:列出项目中所有过时的依赖包及其最新版本,帮助你决定是否需要更新。

安装所有开发依赖

  • 命令 :在新克隆的项目中,直接运行npm install或npm ci(如果你有package-lock.json或npm-shrinkwrap.json文件)。
    • 说明 :这会根据package.json或锁定文件安装所有必要的依赖,非常适合CI/CD流程或团队协作时确保环境一致性。

查看npm帮助

  • 命令 :npm help <command> 或 npm <command> --help
    • 说明:获取特定命令的详细帮助文档,了解其可用选项和用法。

使用npx

  • 命令 :npx <package> [args]
    • 说明:允许你直接运行npm包中的命令,无需全局安装。这对于一次性使用的包特别方便。
相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万4 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋4 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁4 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95274 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大4 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师4 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学4 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端