码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 2023了,是时候使用pnpm了!


    2023了,是时候使用pnpm了!

    Excerpt

    2023了,是时候使用pnpm了!


    什么是pnpm

            pnpm代表performant npm(高性能的npm),同npm和Yarn,都属于Javascript包管理安装工具,它较npm和Yarn在性能上得到很大提升,被称为快速的,节省磁盘空间的包管理工具。

    对比npm,yarn

    图片

    ![图片](data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='1px' height='1px' viewBox='0 0 1 1' version='1.1' xmlns='SVG namespace' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' fill-opacity='0'%3E%3Cg transform='translate(-249.000000, -126.000000)' fill='%23FFFFFF'%3E%3Crect x='249' y='126' width='1' height='1'%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E)

    ![图片](data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='1px' height='1px' viewBox='0 0 1 1' version='1.1' xmlns='SVG namespace' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' fill-opacity='0'%3E%3Cg transform='translate(-249.000000, -126.000000)' fill='%23FFFFFF'%3E%3Crect x='249' y='126' width='1' height='1'%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E)

    通过比对,pnpm牛逼,还有特有的功能,能够管理node.js版本,内容可寻址存储。

    npm或yarn转pnpm

    操作步骤:

    1. 1.

      全局安装pnpm

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    npm install -g pnpm

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

     
    
    1. 1.

      删除npm或yarn生成的node_modules

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    # 项目目录下运行或手动物理删除
    1. 1.

      pnpm import从其他软件包管理器的lock 文件生成 pnpm-lock.yaml,再执行pnpm install --frozen-lockfile(相当于npm ci)生成依赖,防止没有lock文件意外升级依赖包,导致项目出错

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    # 生成`pnpm-lock.yaml`

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    # 安装依赖

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    pnpm install --frozen-lockfile
    1. 1.

      删除npm或yarn生成的lock文件

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    # 删除package-lock.json
    1. 1.

      项目中的npm命令等修改为pnpm,包括README文档、运行命令等

    常用等价命令

    npm命令

    pnpm等价命令

    npm install

    pnpm install

    npm i pkg

    pnpm add pkg

    npm run cmd

    pnpm cmd

    管理 Node.js 环境,安装并使用指定版本的 Node.js。

    --javascripttypescriptbashsqljsonhtmlcssccppjavarubypythongorustmarkdown

    // 安装 LTS 版本的 Node.js 

    pnpm用起来吧

  • 相关阅读:
    百度大模型文心一言api 请求错误码 一览表
    Redis实战篇(三)秒杀
    最好用的Python库推荐总结,每一个都用处很大!
    Spring 从入门到精通 (十四) 切入点详解
    Vue - 实现任意内容展开 / 收起功能组件(支持自定义高度、动态展开与折叠、自定义展开与收起文案、动态增删数据自动计算高度、过渡动画等)
    为什么我推荐你一定要学Python?
    Linux---小练习
    (蓝宝书)网络安全——CTF那些事儿
    C# string字符串内存管理深入分析(全程干货)
    bug:Junit5报错,@SpringBootTest没有运行
  • 原文地址:https://blog.csdn.net/zqd_java/article/details/134023316
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号