2014-07-18 4 views
10

Ich möchte alle Dateien tief in Vorlagen geschachtelt sehen, aber jeden Ordner nach dem Build auszuschließen.Exclude Unterverzeichnis in gulp.watch

So ausschließen Verzeichnisse wie:

  • ./templates/foo/build/**/*

  • ./templates/bar/build/**/*

Aber umfassen Verzeichnisse und Dateien wie:

  • ./templates/foo/template.html

  • ./templates/foo/css/**/*

  • ./templates/bar/template.html

  • ./templates/bar/css/**/*

Derzeit habe ich Erfolg der Sub-Sub-Ordner-Namen und Sub-Sub-Dateitypen aushändigen

Aber ich würde wirklich gerne in der Lage sein zu stoppen, den Ausdruck jedes Mal zu aktualisieren, wenn ich bestimmte Unter-Unterordner oder Unter-Unter-Dateitypen hinzufügen. Wie kann alles außer?

Antwort

11

Ich denke, dass Sie versuchen könnten, die build Unterverzeichnisse mit dem ! Zeichen auszuschließen.

Denken Sie an so etwas, passen sie an Ihre Bedürfnisse passt:

gulp.watch([ 
'templates/**/*', 
'!templates/*/{build,build/**}' 
], ['build_templates']) 

Sie könnten auch einen Blick auf Gulp Ignore haben.

+0

Ich konnte nicht das funktioniert. Ich fand https://www.npmjs.org/package/gulp-grep-stream – jrhicks

+1

Das funktioniert nur, wenn Sie gulp-ignore installiert haben. –

+1

@SachinGorade falsch, Sie brauchen das Plugin nicht, um Glob-Muster zu negieren. –

2

Ich weiß, das ist alt, aber Sie sollten den Ordner und alles innerhalb des Ordners auch ausschließen, ausschließlich den Ordner allein funktioniert nicht.

gulp.watch(['templates/**/*','!templates/{foo, bar}/build/**/*'], ['build_templates']);