使用Gulp Zip压缩文件夹中的所有文件

时间:2015-07-21 21:20:01

标签: javascript angularjs npm gulp gulp-zip

我正在使用gulp-zip压缩我的源文件。所以我有一个名为FIFA的主文件夹,它有其他子文件夹,可能有更多的子文件夹和文件。此外,FIFA文件夹还包含我的package.json,gulp.js和其他一些文件。我想基本上使用gulp-zip压缩我的整个项目并创建一个名为distribution的文件夹并将zip保存在其中。所以这是我使用的代码。

gulp.task('zip', function () {
    return gulp.src('./*,')
        .pipe(zip('test.zip'))
        .pipe(gulp.dest('./distribution'));
});

问题是虽然在分发文件夹中创建了一个zip,zip只包含FIFA文件夹中的文件,但FIFA子文件夹中的所有文件都不存在。因此,例如,如果FIFA有一个名为ronaldo的子文件夹,而ronaldo包含goal.js,则goal.js不在zip中。我做错了什么?请指教。

1 个答案:

答案 0 :(得分:25)

尝试使用两个*

gulp.task('zip', function () {
    return gulp.src('./**')
        .pipe(zip('test.zip'))
        .pipe(gulp.dest('./distribution'));
});
  

***之间有什么区别?

一颗星意味着所有文件,没有文件夹 - 星星也会更深,并且还包括指定文件夹中的所有文件夹。

  

例如,如果你想要两个星星来包含除一个特定文件夹之外的所有文件夹,那还可以吗?

您可以使用!./excludedDir之类的感叹号,将src作为数组传递!...作为其中一个值