Javascript “是否有一个最低版本?”;npm安装grunt;?

Javascript “是否有一个最低版本?”;npm安装grunt;?,javascript,node.js,gruntjs,Javascript,Node.js,Gruntjs,在我看来,当我运行npm install grunt时,我得到了一个严重污染的项目文件夹。在文件夹node_模块中有rimraf、coffescript和其他我不想使用的lib。这些是grunt自身能够运行所必需的,还是只是为了我的方便 我希望某种“npm安装grunt——minimal”只安装能够使用grunt所需的绝对最小值。我真的不喜欢我的项目文件夹充满了不是我自己的代码的东西。我在谷歌上搜索了我能想到的术语,比如“最小grunt安装”,但只找到了基本的安装教程。在项目目录上方的目录中创建

在我看来,当我运行npm install grunt时,我得到了一个严重污染的项目文件夹。在文件夹node_模块中有rimraf、coffescript和其他我不想使用的lib。这些是grunt自身能够运行所必需的,还是只是为了我的方便


我希望某种“npm安装grunt——minimal”只安装能够使用grunt所需的绝对最小值。我真的不喜欢我的项目文件夹充满了不是我自己的代码的东西。我在谷歌上搜索了我能想到的术语,比如“最小grunt安装”,但只找到了基本的安装教程。

在项目目录上方的目录中创建一个
node\u modules
目录,然后在那里执行
npm安装grunt
。这样,模块就可以访问,但它们不在项目的
节点\u modules
目录中


另一个选项是使用
npm安装-g grunt
全局安装grunt。

不,您不能。Grunt是npm包,它有依赖项(这是正常的)。事实上,这种依赖关系不会污染项目文件夹结构。这是正常的

  • 将节点_模块添加到.gitignore,不要提交它

  • 使用
    --save
    标志(将包写入package.json)或
    --save dev
    标志(将包写入package.json,作为开发所需的包)安装每个npm包

  • 将package.json提交到存储库。因此,每个团队成员都可以通过
    npm install
    npm install--production

正如Dan所说,您可以使用-g标志全局安装grunt,但这并不能解决您的问题,因为您安装的每个npm包都有自己的依赖项(您可能会认为它也会污染您的文件夹结构)

你知道,开发(或生产)需要很多东西。在安装apache(或其他东西)时,您不会说这会污染您的文件系统(但它有自己的文件夹等等)


如果项目存储库中不存在文件结构,则不会污染文件结构。

我个人使用
--dont-install-at-all-because-I-dont-want-slow-bloated-software-like-grunt
标志,这无疑减少了安装的占地面积。@torazaburo那么,您有什么建议可以满足同样的需求,但不会使我的项目膨胀?
make
。看,或者。诚然,这属于宗教战争的范畴。我不明白为什么会有这么多反对票。在过去的几天里,我浪费了很多时间尝试各种设置。NPM安装的总容量似乎超过100兆字节。更重要的是,对于Windows来说,文件/文件夹长度变得太长并不罕见。我喜欢极简主义的版本。我目前尝试的一个相对较小的版本在我的node_modules文件夹中包含超过86000个文件。(packages.json中有26个依赖项,其中20个仅为dev,大约15个与gulp相关(而不是grunt对应项,因为我更熟悉gulp)),但您没有质疑问题的前提,即拥有繁忙的
节点_modules
目录到底有什么问题,那么,按照您的建议将其上移一级有什么好处呢?很有意义:将node_模块添加到.gitignore,不要提交它。谢谢