Grunt 文档声明它(和任何插件)应该包含devDependencies
在package.json
. 我可能遗漏了一些明显的东西,但我不明白为什么。如果我想部署我的应用程序的生产版本,我仍然需要构建它。如果我不构建它,那我为什么需要 Grunt?
换句话说,想象一下我拉出我的回购并说:
npm install --production
如果 Grunt 在该部分中,我现在如何构建我的应用程序devDependencies
?
你用 Grunt 做什么?
Grunt 通常列在 devDependencies 中,因为即使您将其部署到生产环境中,您仍然需要编译 CoffeeScript、SASS 等内容。
在我们的例子中,它看起来像这样:我们检查 GitHub 的最新更改,然后我们的部署脚本登录到服务器,从 GitHub 主服务器拉取最新代码,运行 npm install 然后 grunt production。
然后我们在服务器上有一个干净的生产版本的站点。
通常 Grunt 用于开发,它可能处理测试、样式表预处理器、javascript uglifying 等。您不会将 Grunt 相关文件作为生产代码的一部分分发,您将分发经过缩小、测试、丑化的代码。