这是什么?
Grunt 是一个 JavaScript 任务运行器:你只需把项目里那些重复性的任务描述一遍,Grunt 就会替你执行,不用再手动一步步跑。
那它到底是命令行工具,还是写代码时用的库?
某种程度上两者都是:它是一个可以加到项目里的 npm 包,配套的 grunt-cli 依赖会提供 'grunt' 命令,让你在终端里运行它。它运行在 Node.js 上,需要 16 或更高版本。
怎么把它装进项目并开始使用?
在你的项目里通过 npm 安装(包括这个包和配套的 grunt-cli),文档就去 gruntjs.com 网站上看 —— README 里写着'所有内容'都在那里。
我的电脑需要满足什么条件才能运行它?
官方声明的要求是 Node.js 16 或更新版本。依赖列表全是纯 JavaScript 库(glob、minimatch、js-yaml 之类),所以不需要编译原生代码,也不用额外运行什么服务。
网上到处都是旧版 Grunt —— 到底哪些版本还在维护?
只有最新版本(1.6)还在获得安全修复和 bug 修复。1.5 及所有更早的版本都已停止维护;HeroDevs 为这些旧版本提供商业化的替代方案。
这个仓库 2011 年就有了 —— Grunt 还活着吗?
活着:它没有被归档,CI 会在代码变更时跑测试流程,1.6 版本线仍在支持中,而且它还加入了 OpenJS 生态的可持续发展计划,有商业合作伙伴。
它能在我的电脑上运行吗 —— Windows、macOS、Linux?
凡是 Node 能跑的地方都可以:它是一个普通的 Node 包,自带跨平台命令行工具,Windows、macOS 和 Linux 都没问题。
如果我的项目被旧版 Grunt 卡住了怎么办?
HeroDevs 是这个项目在 OpenJS 生态可持续发展计划中的合作伙伴,为旧版 Grunt(最低支持到 0.4)提供即插即用的替代方案,并持续更新以满足安全和合规要求。
我可以用它自动化哪些任务?
JS 项目里那些重复性的杂活 —— 代码检查、测试、构建 —— 都能变成自动化步骤,而不用一遍遍敲命令。这个仓库自己也保持着这样的流程:它的 CI 用 ESLint 做代码检查,并运行 QUnit 单元测试。
Which topics is it in?
build-automation, pipelines, linting, task, devtools, build-tool, cli-tool, hacktoberfest, npm, automation, tool, nodejs