当我将项目发布到GitHub时,我应该如何处理Grunt的node_modules目录?

bma*_*man 5 git gruntjs

这是我使用Grunt和Git的第一个项目.在我的项目中,我有' *node_modules* '目录,我是通过命令' npm install grunt ' 创建的.现在我想将我的项目发布到GitHub.

我的项目应该包含'node_modules'还是我应该省略它?我担心这会让那些不熟悉Grunt的开发人员感到害怕.事实上,我很困惑为什么你应该分别为每个项目安装grunt.为什么不可能在全球安装它?

这是我的安装:grunt-contrib-concat,grunt-contrib-jshint,grunt-contrib-qunit,grunt-contrib-uglify,grunt-contrib-watch.

Kyl*_*ung 7

你不应该全局安装grunt和grunt插件的原因是因为那样你一次只能安装1个版本.在与团队合作时,这也意味着团队中的每个成员都必须运行相同版本的grunt和每个grunt插件.

当你跳转到不同的项目时,与团队协调这些版本并切换版本是一场噩梦.解决方案,在本地安装一切.它只是文件空间,大多数模块不占用大量空间.

大多数人不会将其node_modules文件夹提交到github.package.json通过npm install在同一文件夹中键入:可以再次安装您列出的每个依赖项.

用于npm install grunt --save-devpackage.json安装插件和模块时保存.

提交node_modulesIMO 的唯一合理理由是使用私有应用程序和repo来部署到生产环境.在哪里你想确定你的依赖关系被锁定而不是在推送时破坏某些东西.还有其他策略可以避免提交node_modules,即使使用这种用例(例如npm shrinkwrap).

简而言之:

  • 如果您正在部署应用程序并且关于锁定deps的偏执,请提交node_modules.
  • 其他一切,不要提交你的node_modules.