将gulp spawn git log放入文件中

时间:2017-10-30 12:52:18

标签: javascript git gulp

我有以下输出:

gulp.task('log', function () {
  spawn('git', ['log', '-20', '--pretty=format:"%h - %an, %ai : %s <br\>'], {stdio: 'inherit'});
});

我想将其保存到文件中。我该如何实现呢?

我是gulp的新手,试图用这个:

gulp.task('log', function() {
  require('fs').writeFileSync('myGitLog.txt', spawn('git', ['log', '-20', '--pretty=format:"%h - %an, %ai : %s <br\>'],  {stdio: 'inherit'}))
});

但它将[object object]放入文件中。

我的另一种方法就是:

gulp.task('log', function() {
  const text = spawn('git', ['log', '-20', '--pretty=format:"%h - %an, %ai : %s <br\>'],  {stdio: 'inherit'});
  return file('myGitLog.txt', text, {src: true})
    .pipe(gulp.dest('./'));
});

但这给了我以下错误:

TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
   at Function.Buffer.from (buffer.js:161:9)

提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用shell task找到了可能的解决方案:

ps_strategy