@LoranDeMarcus

Как исключить папку из сборки Gulp?

Добрый вечер.

Нужна помощь, как исключить папку less из таска build, который собирает в папку build. Попробовал через удаление папки после сборки, но не удаляет

var gulp = require("gulp"),
minify = require("gulp-clean-css"),
inlineFonts = require('gulp-inline-fonts'),
lessImport = require('gulp-less-import'),
less = require("gulp-less"),
concat = require("gulp-concat"),
clean = require('gulp-clean');

gulp.task("minify-less", function () {
  return gulp.src("./src/less/project/**/*.less")
  .pipe(lessImport("./src/less/project/**/*.less"))
  .pipe(less())
  .pipe(concat("project.min.css"))
  .pipe(minify())
  .pipe(gulp.dest("./build"));
});

gulp.task("build", ["minify-less"], function () {
  return gulp.src(['!./src/less/**/*', './src/**/*', './src/*.html'])
  .pipe(gulp.dest('./build'))
  return del('./build/less', {force:true});
});
  • Вопрос задан
  • 1256 просмотров
Решения вопроса 1
edalis
@edalis
HTML, CSS, JS, Node.js
Замените в таске build строку:
return gulp.src(['!./src/less/**/*', './src/**/*', './src/*.html'])

на:
return gulp.src(['!./src/{less,less/**/*}', './src/**/*', './src/*.html'])

--------------------------------------------------------------------------------------------------------------------------------------------
Вот это:
return del('./build/less', {force:true});

не срабатывает, потому что у вас уже есть оператор return до этого, вот здесь:
return gulp.src(['!./src/less/**/*', './src/**/*', './src/*.html'])

Уберите его, оставьте просто:
gulp.src(['!./src/less/**/*', './src/**/*', './src/*.html'])

Или сделайте отдельный таск del, который будет удалять ненужные папки после сборки и запускайте его после таска build.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
zorro76
@zorro76
Используем в проекте файл .gitignore

к примеру его содержание:
.sass-cache/
.idea
/node_modules
/bower_components
/builds
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы