Node.js 当作为节点子进程运行时,Jekyll生成未关闭

Node.js 当作为节点子进程运行时,Jekyll生成未关闭,node.js,jekyll,gulp,child-process,Node.js,Jekyll,Gulp,Child Process,我正在尝试以gulp文件中的节点子进程的形式运行jekyllbuild。问题是,jekyllbuild似乎运行了多次,而且从未关闭 我能想到的唯一一件事可能是,jekyll build过程修改了标记文件,这将导致gulp.watch再次运行。但我看不到任何证据 如果我只是从终端运行jekyll build,我会得到以下结果: Configuration file: /home/user_name/projects/project_name/_config.yml Sour

我正在尝试以gulp文件中的节点子进程的形式运行
jekyllbuild
。问题是,
jekyllbuild
似乎运行了多次,而且从未关闭

我能想到的唯一一件事可能是,
jekyll build
过程修改了标记文件,这将导致
gulp.watch
再次运行。但我看不到任何证据

如果我只是从终端运行
jekyll build
,我会得到以下结果:

Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 
                    done.
 Auto-regeneration: disabled. Use --watch to enable.
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 

[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 

[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 
当我将其作为节点子进程运行时,会得到以下结果:

Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 
                    done.
 Auto-regeneration: disabled. Use --watch to enable.
[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 

[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 

[20:59:03] Configuration file: /home/user_name/projects/project_name/_config.yml
            Source: /home/user_name/projects/project_name
       Destination: /home/user_name/projects/project_name/_site
      Generating... 
它像那样重复了20多次,然后就停止了,之后就什么也不输出了

这是我的gulpfile.js:

var gulp    = require('gulp');
var spawn   = require('child_process').spawn;
var gutil   = require('gulp-util');

gulp.task('default', function () {
  gulp.watch('**/*.md', function (e) {
    var cp      = spawn('jekyll', ['build']),
        stdout  = '',
        stderr  = '';

    cp.stdout.setEncoding('utf8');

    cp.stdout.on('data', function (data) {
      stdout += data;
      gutil.log(data);
    });

    cp.stderr.setEncoding('utf8');

    cp.stderr.on('data', function (data) {
      stderr += data;
      gutil.log(gutil.colors.red(data));
    });

    cp.on('error', function (err) {
      gutil.log(gutil.colors.red('gulp-jekyll', err));
    });

    cp.on('close', function (code) {
      gutil.log('Done with exit code ', code);
      gutil.log('Jekyll has completed the build process.');
    });

  });
});

好的,问题似乎是我忘了在jekyll
\u config.yml
文件中排除我的
节点模块
目录。一定有太多的降价文件,让杰基尔不知所措

尽管如此,我还是不知道为什么它们一开始就触发了
gulp.watch
,因为它们没有经过编辑