繁体   English   中英

将git add添加到Grunt githooks插件

[英]Adding git add to Grunt githooks plugin

我目前正在使用grunt git hooks实现预提交钩子 我对使用此插件是陌生的,还不清楚是否可以使用此插件来完成我最初打算做的事情。

目前,我有两个grunt任务,每个git commit都会触发如下。

    githooks: {
        all: {
            'pre-commit' : 'compass requirejs'
        }
    }

上面生成了git pre-commit钩子,如下所示。

#!/usr/bin/env node

// GRUNT-GITHOOKS START
var exec = require('child_process').exec;

exec('grunt compass requirejs', {
       cwd: 'C:\\development\\Sourcecode\\qnb-home'
     }, function (err, stdout, stderr) {

  console.log(stdout);

  var exitCode = 0;
  if (err) {
    console.log(stderr);
    exitCode = -1;
  }

  process.exit(exitCode);
});

// GRUNT-GITHOOKS END

尽管上面确保了在git commit之前运行任务,但它不会将新创建的缩小文件(已编译的SASS和r.js文件)添加到现有提交中。

因此,我想使用grunt githooks将git add --all到预提交钩子中。 这有可能吗? 任何评论/答案将不胜感激。

您可以使用grunt-githook的template选项创建一个自定义模板,该模板将执行git add --all命令。 这篇入门文章提供了有关如何创建自定义模板的很好的示例。

就是说,在每次提交之前运行git add -all将使选择哪些文件提交的工作比平时多得多。 您必须先保存不想包含在提交中的更改,然后再保存。 如果您需要将这些文件全部添加到存储库中,则可能需要在添加内容上有针对性。 毕竟它们可以从源头生成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM