Gulp 吞咽修正

Gulp 吞咽修正,gulp,gulp-rev,Gulp,Gulp Rev,我一直在研究如何使用gulp构建系统自动化开发过程 关于修改样式表,我有一些问题。我曾使用gulp rev生成带有更新版本号的文件,但它会在文件中的任何更改上不断创建额外的文件,从而增加我的设置大小 gulpfile.js var gulp = require('gulp'); var watchLess = require('gulp-watch-less'); var less = require('gulp-less'); var plumber = require('gulp-plumb

我一直在研究如何使用gulp构建系统自动化开发过程

关于修改样式表,我有一些问题。我曾使用gulp rev生成带有更新版本号的文件,但它会在文件中的任何更改上不断创建额外的文件,从而增加我的设置大小

gulpfile.js

var gulp = require('gulp');
var watchLess = require('gulp-watch-less');
var less = require('gulp-less');
var plumber = require('gulp-plumber');
var watch = require('gulp-watch');
var rev = require('gulp-rev');
var revReplace = require('gulp-rev-replace');
var cleanCSS = require('gulp-clean-css');
var autoprefixer = require('gulp-autoprefixer');
var revAppend = require('gulp-rev-append');

//LESS
gulp.task('less', function() {
    return gulp.src('assets/less/*.less')
        .pipe(watchLess('assets/less/*.less'))
        .pipe(less())
        .pipe(autoprefixer({
            browsers: ['> 0%'],
            cascade: false
        }))
        .pipe(cleanCSS())
        .pipe(gulp.dest('assets/css/'))
        .pipe(rev())
        .pipe(gulp.dest('assets/css/'))
        .pipe(revAppend())
        .pipe(gulp.dest('assets/css'))
        .pipe(rev.manifest())
        .pipe(gulp.dest('assets/'));
});

//Watch
gulp.task('watch', function(){
    gulp.watch('assets/less/*.less', ['less']);
})

//Default
gulp.task('default', ['watch']);
我需要帮助来创建更新更改后的最新文件,并从文件目录中删除以前的文件,或仅在其中包含最新更新/更改的文件中提供帮助


我还使用了其他几个与rev相关的插件,但没有找到正确的配置方法。好吧,您有四个带有目标位置的管道

.pipe(gulp.dest('assets/css/'))
.pipe(gulp.dest('assets/css/'))
.pipe(gulp.dest('assets/css'))
.pipe(gulp.dest('assets/'));
其中三个目的地相同。希望管道中的所有文件在不同阶段都有三个副本。在gulp rev中,你需要一个额外的管道来装载舱单,但这仍然给我们留下了2个而不是4个

尝试:

如果您想修订包,并将文件修订责任留给您的源代码管理或生成服务器,请重新设置

//LESS
gulp.task('less', function() {
    return gulp.src('assets/less/*.less')
        .pipe(watchLess('assets/less/*.less'))
        .pipe(less())
        .pipe(autoprefixer({
            browsers: ['> 0%'],
            cascade: false
        }))
        .pipe(cleanCSS())
        .pipe(rev())
        .pipe(revAppend())
        .pipe(gulp.dest('assets/css'))
        // WARNING!!! Put the manifest after all the file pipes
        .pipe(rev.manifest())
        .pipe(gulp.dest('assets/'));
});