Ответ 1
Вы можете легко сохранить конфигурацию во многих внешних файлах JSON по мере необходимости. grunt.file.readJSON поможет вам здесь. Например:
module.exports = function(grunt) {
var concatConf = grunt.file.readJSON('../concat-common.json'),
minConf = grunt.file.readJSON('../min-common.json');
// do whatever you want with concatConf and minConf here
// ...
// Project configuration.
grunt.initConfig({
pkg: '<json:grunt-sample.jquery.json>',
meta: {
banner: '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' +
'<%= grunt.template.today("yyyy-mm-dd") %>\n' +
'<%= pkg.homepage ? "* " + pkg.homepage + "\n" : "" %>' +
'* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>;' +
' Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> */'
},
concat: concatConf,
min: minConf
// ...
});
// Default task.
grunt.registerTask('default', 'concat min');
};
Не забывайте, что файл grunt является обычным файлом JavaScript, который выполняется в среде Node, а параметры конфигурации - обычные объекты JavaScript:)