Ничего из написанного вами не понял, что у вас не так?
Пример:
var gulp = require('gulp'),
rigger = require('gulp-rigger');
var src = {
html: ['./src/*.html']
},
gulp.task('html', function() {
gulp.src(src.html)
.pipe(rigger())
.pipe(gulpIf(env !== 'dev', minifyHTML()))
.pipe(gulp.dest(outputDir))
.pipe(connect.reload())
});
gulp.task('watch', function() {
gulp.watch('./src/**/*.html', ['html']);
});
в папке
src (app) создаем папку
template, а которой файлы
header.html, footer.html и другие...
Далее в своих файлах html прописываем всего лишь:
//= template/header.html//= template/footer.html
и вуаля, отключаем себе головную боль.