我想在/ dist文件夹中创建所有文件和文件夹的zip。
我的文件夹结构如下:
/dist
/audio/
/css/
/icons/
/js/
/libs/
/locales/en-US
/locales/mr
/locales/hi
/locales/te
/locales/fr
我基本上想用 gulp-zip 压缩我的整个/ dist文件夹和子文件夹,并将zip保存在其中。所以这就是我在做的事情:
var bases = {
app: 'app/',
dist: 'dist/',
};
gulp.task('zip', function () {
return gulp.src(bases.dist + '**')
.pipe(using())
.pipe(zip('buildTest.zip'))
.pipe(gulp.dest('./' + bases.dist));
});
有了这个我能够创建buildTest.zip,但它不包括/locales.Please建议中的所有子文件夹。
答案 0 :(得分:2)
Gulp尽可能以异步方式运行依赖任务,因此不使用zip作为依赖任务,而是让zip任务依赖于构建任务,让默认任务运行zip任务,如下所示
const gulp = require('gulp');
const zip = require('gulp-zip');
gulp.task('build', ['copyAssets', 'minify-js', 'minify-css']);
gulp.task('zip', ['build'], function() {
gulp.src('dist/**')
.pipe(zip('archive.zip'))
.pipe(gulp.dest('./'))
});
gulp.task('default', ['clean'], function () {
gulp.start('zip');
});