如何将参数传递给grunt任务?

时间:2014-02-15 15:21:22

标签: javascript git gruntjs

作为我的grunt:build命令的一部分,我运行一个shell任务,构建我的jekyll站点,提交项目,并将其推送到github。唯一的问题是提交消息。我希望能够调用grunt:build并传入一个字符串,这将成为我的提交消息。但我真的不确定如何做到这一点。有什么想法吗?

以下是我的Gruntfile的相关部分:

module.exports = function(grunt) {
        grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

            shell: {

                dev: {
                    command: 'jekyll build'
                },

                build: {
                    command: [
                    'jekyll build',
                    'git commit -am "test commit"',
                    'git push origin master'
                    ].join('&&')
                }

                }

    grunt.loadNpmTasks('grunt-shell');

    grunt.registerTask('build', ['jshint','concat', 'uglify','sass', 'autoprefixer','shell:build']);

};

1 个答案:

答案 0 :(得分:5)

尝试grunt.option()http://gruntjs.com/api/grunt.option):

'git commit -am "' + grunt.option('commit-msg') + '"',

并使用:grunt build --commit-msg="test commit"

运行