不同的项目对不同的包管理选择的情况是不同:
1
cheneyzhang 2023-03-02 09:44:28 +08:00
只要运维愿意配合,前端可以做到同一个公司下统一包管理工具的
|
2
GreatAuk 2023-03-02 09:44:32 +08:00 8
💡 Use the right package manager: https://github.com/antfu/ni
|
3
theprimone 2023-03-02 09:47:37 +08:00
@GreatAuk 哈哈哈,我在公司安利好久终于不少人用上了
|
4
theprimone 2023-03-02 09:48:48 +08:00
另外 yarn v2 很久以前尝试升级过,各种折腾结果项目都起不来,索性没碰过了。
|
5
renmu 2023-03-02 09:52:27 +08:00 via Android
项目下是哪个 lock 就跑哪个,能跑起来就行
|
6
wangtian2020 2023-03-02 09:53:47 +08:00
一直用 npm ,配合 nrm 设置 proxy ,没啥体验问题
|
7
bjfane 2023-03-02 10:08:33 +08:00
@GreatAuk ni 只是解决命令的问题,对我来说各种工具命令没什么 仓库有好几个在我的 ssd 上 我就想吐。
顺便说一下 pnpm 在 6 ~ 7 版本改过默认路径,有可能你的电脑上 pnpm store 有两个, macos 的话 /Users/xxxx/.pnpm-store 老路径 /Users/xxx/Library/pnpm/store/v3 新路径 |
8
gam2046 2023-03-02 10:18:10 +08:00
VS Code Remote in Container 可以变相的解决这个问题。毕竟都相互隔离开了。
|
9
hhjswf 2023-03-02 10:43:07 +08:00 via Android 2
前端娱乐圈
|
10
cmdOptionKana 2023-03-02 10:53:09 +08:00
这算割裂?好歹还是围绕 js/ts ,一共也就这么几个东西。后端呢?后端光是语言就几十种,主流的也有近 10 种,每种语言又可能有多种包管理。
如果因此就说前端是娱乐圈,那后端是啥? |
11
jqtmviyu 2023-03-02 10:55:03 +08:00
现在一般不用 yarn 了, npm 后来不也支持扁平树 /离线安装 /lockfile 了吗?
有什么特性是 yarn 显著比 npm 领先的吗? 能用 pnpm 就 pnpm, 不能就 npm |
12
dcsuibian 2023-03-02 10:57:29 +08:00 1
前端一般是:这个库已经烂了,别维护了,另开个新的吧
|
13
9ki 2023-03-02 10:58:34 +08:00
确定蛋疼, 但是不可否认的是每个技术都有其解决的痛点, 其实普通开发者会 `npm install` 和 `yarn` 完全足够了, 其他的技术当你需要他的时候再去使用也不迟.
不过就像楼主说的, 每个包管理器缓存很难管理, 特别是我这种就 256G 储存空间, 每月都要手动清理一次. |
14
xqk111 2023-03-02 11:16:42 +08:00
都用过,还在回到 npm ,兼容性好点,
|
15
xqk111 2023-03-02 11:17:54 +08:00
@9ki pnpm 设计就是解决这个问题,我现在电脑里也是一大堆 node_modules ,npm 设计之初可能没考虑到这个事情吧
|
16
vivipure 2023-03-02 11:28:24 +08:00
用 pnpm 把,比较省空间。
|
17
mmc 2023-03-02 11:36:29 +08:00 8
我觉得好的包管理器应该是安装时可以很顺畅,可以直接拉编译好的二进制文件,而不是用我的电脑在跑一次编译。每次看到旧项目,想要试一下,npm install 突然来个要编译的包,要装各种库,最后编译还崩溃了,说的就是你:node-sass!
|
18
king888 OP @cmdOptionKana
就拿前端的包管理跟 golang 的对比吧,别人说娱乐圈,是有道理的 |
19
wu67 2023-03-02 12:18:37 +08:00
npm 大法好. 包管理各种层出不穷, 什么 cnpm yarn pnpm, 但是你看 npm 退出舞台了吗?
|
20
yinzhili 2023-03-02 13:31:30 +08:00 1
@cmdOptionKana 前端写好项目,过个两年后再去编译时,出错的概率非常高,后端显然没有这么恶心的问题
|
21
duan602728596 2023-03-02 13:33:08 +08:00
锁定包管理器,请用 corepack: https://github.com/nodejs/corepack 。
关于 node-sass ,官方已经警告废弃了,并且已经推荐了好几种方案,包括迁移到 sass ,配置各种参数等: https://github.com/sass/node-sass#binary-configuration-parameters ,几分钟就能搞定的东西。 |
22
DKburNIng 2023-03-02 14:02:38 +08:00
@duan602728596 几分钟我连这个 readme 都看不完
|
24
HugoChao 2023-03-02 14:09:01 +08:00
用着都大差不差
|
25
eryajf 2023-03-02 14:46:12 +08:00
@yinzhili 对于这个说法比较能感同身受,同类的还有 Python ,之前就是因为安装过几个 Python 的开源项目,给折腾怕了
|
27
learningman 2023-03-02 15:01:27 +08:00
不错了,至少这一堆都能读 package.json
反面样例参考 C++ |
28
horou 2023-03-02 16:56:02 +08:00
我觉得 yarn3 挺好的,速度快,省存储,就是别的很多项目用不了,我自己的项目到是挺顺畅的。
|
29
Justin13 2023-03-02 17:38:46 +08:00 via Android
我只想用 npn,奈何。。。
|
30
salmon5 2023-03-02 18:09:53 +08:00
@cheneyzhang #1 和运维有个毛关系
|
31
justin2018 2023-03-02 18:12:19 +08:00
老哥们 有啥靠谱的 node_modules 清理工具
求推荐 |
32
um1ng 2023-03-02 19:44:40 +08:00
运维应该只配置 npm 的
|
34
Lqxc 2023-03-02 22:28:19 +08:00 via Android
可以使用 nix 解決你的問題
|
35
lete 2023-03-02 23:18:11 +08:00
我一直都是用 npm+mini-nrm ,反正 npm YYDS 就对了,pnpm 节省空间?我又不缺空间
|
36
adoyle 2023-03-03 00:32:16 +08:00
你可以用 corepack 解决你的问题。node 14.19.0 和 v16.9.0 起就自带了 corepack ,之前的版本可以通过 `npm install -g corepack` 安装。
你可以在 Docker 容器里运行 corepack 来安装项目依赖,这样就不污染本机开发环境了。 |
37
Gav1nw 2023-03-03 00:50:26 +08:00
不过我记得 yarn 只是优化 NPM 当年不能多线程的问题吧,最终还是下载到 node_module 文件夹呀
|
38
iulo 2023-03-03 13:09:47 +08:00
@justin2018 npkill
|