gulpを使って圧縮ファイルを作りたい時に、ディレクトリ構成を保ったまま圧縮する方法
ライブラリは gulp-zip を使用。
Usage通りに gulp.src('src/*')
と指定するとルートディレクトリに全部展開されてしまう。
gulp.src('src/**/*', {base: 'src'})
と、 base
を追加すると指定されたディレクトリの構成を保ったまま圧縮できる。
base
は gulp自体の機能 なので、他でも使えるテクニックだった。
全体
const gulp = require('gulp');
const zip = require('gulp-zip');
gulp.task('default', () => {
return gulp.src('src/*', {base: 'src'})
.pipe(zip('archive.zip'))
.pipe(gulp.dest('dist'));
});