16

我正在用 grunt 构建一个 grunt javascript 项目,并且我有一个 package.json 文件,它看起来像:

{
   ... name, author, etc here ...

   "dependencies": {
      "grunt-html":"0.2.1"
   }

 }

我可以运行npm install安装 grunt-html 并且这工作得很好。但是当我添加新的依赖项时,团队中的所有开发人员都必须知道要npm install再次运行。有没有办法自动安装尚未安装的任何软件包?我应该只运行 npm install 以确保我是最新的吗?

4

2 回答 2

26

npm install的,这是 IMO 最简单的方法。让每个人都熟悉其他npm命令也可以更轻松地管理部门。如:

  • npm ls列出当前安装的模块。
  • --save标志,即npm install grunt-html --save安装包和版本并将其插入到您的package.json.
  • npm prune删除未包含在您的package.json.

管理依赖项的其他方法是提交node_modules存储库中的文件夹以避免其他开发人员必须运行npm install. 或者对于更复杂的项目,考虑使用npm shrinkwrap将依赖项锁定到特定版本:npm shrinkwrap docs

于 2012-11-20T00:02:08.707 回答
1

我没有尝试过 grunt-install-dependencies ( https://github.com/ahutchings/grunt-install-dependencies ),但这似乎可以满足您的需求。只需将命令 install-dependencies 添加为自定义定义的 grunt tasts 中的第一个任务,例如

grunt.registerTask('build', ['install-dependencies', 'useminPrepare', ... ]);

于 2013-10-26T15:20:58.020 回答