如何避免在gulp中复制空文件夹

时间:2014-09-25 06:51:17

标签: javascript gulp

// current setup:
public
    css
        navigation
            right-sidebar.css
            left-sidebar.css
        main
            header.css
            foot.css
            main.css
        extra
            grid.css
            normalize.css

// trying to achieve:
public
    ...
dist
    css
        navigation
            right-sidebar.css
            left-sidebar.css
        main
            header.css
            footer.css
            main.css

我正在尝试避免将css/extra目录复制到dist。我试过了:

var src = ['public/css/*', '!public/css/extra/**']

return gulp.src( src )
    .pipe( gulp.dest( 'dist/css/' ) )

这会成功复制所有必需的文件夹及其文件,但它也会复制dist中的空extra目录以提供dist/extra/

2 个答案:

答案 0 :(得分:2)

模式!public/css/extra/**排除extra目录中的所有内容,但不排除目录本身。

要排除它,您需要将glob模式设置为。

var src = ['public/css/**/*', '!public/css/extra/']

答案 1 :(得分:2)

我不确定某些事情是否发生了变化,但Apercu的回答并不适合我。

它看起来有点像ongoing issue

对我有用的选项看起来像这样:

var src = ['public/css/**/*', '!public/css/{extra,extra/**}']