为什么 npm 在本地安装包?
Why does npm install packages locally?
这更像是一个设计问题,可能不属于这里(请告诉我)。据我了解,大多数语言都将它们的依赖项安装在一个通用的 space ( /usr/local/ ... ) 中,或者使用一些项目/环境特定的隔离(不同的文件夹来保存不同的版本)。 npm 创建者在本地安装依赖项的想法是什么?可能考虑了哪些利弊?这一决定对当前形势有何影响?
What was the thought process of npm creators to install dependencies locally?
喜欢你难过different folders to hold different versions
.
What pros and cons might have been considered?
专业版:
同一台机器上的多个项目可以轻松隔离依赖关系。
如果您选择 pip
(对于 Python),您将需要设置一个
virtual-env
如果您想在同一个平台上管理多个项目
主持人。 virtual-env
抽象环境变量实现
npm 对文件夹有什么影响。
反对意见:
- 项目之间不会共享相同版本的依赖。
- 环境管理 - 如果您不小心,有时 dev-dependencies(工具)会找到通往正常依赖项的途径。
How has this decision affected the current landscape?
我不会说那场比赛。现在使用 docker
创建隔离环境的日子比以往任何时候都更容易。这意味着在生产中 docker 容器是隔离的。
关于开发环境,越来越多的开发人员正在转向 docker dev-container
,这使得隔离问题已过时。
这更像是一个设计问题,可能不属于这里(请告诉我)。据我了解,大多数语言都将它们的依赖项安装在一个通用的 space ( /usr/local/ ... ) 中,或者使用一些项目/环境特定的隔离(不同的文件夹来保存不同的版本)。 npm 创建者在本地安装依赖项的想法是什么?可能考虑了哪些利弊?这一决定对当前形势有何影响?
What was the thought process of npm creators to install dependencies locally?
喜欢你难过different folders to hold different versions
.
What pros and cons might have been considered?
专业版:
同一台机器上的多个项目可以轻松隔离依赖关系。
如果您选择
pip
(对于 Python),您将需要设置一个virtual-env
如果您想在同一个平台上管理多个项目 主持人。virtual-env
抽象环境变量实现 npm 对文件夹有什么影响。
反对意见:
- 项目之间不会共享相同版本的依赖。
- 环境管理 - 如果您不小心,有时 dev-dependencies(工具)会找到通往正常依赖项的途径。
How has this decision affected the current landscape?
我不会说那场比赛。现在使用 docker
创建隔离环境的日子比以往任何时候都更容易。这意味着在生产中 docker 容器是隔离的。
关于开发环境,越来越多的开发人员正在转向 docker dev-container
,这使得隔离问题已过时。