Скопировать .htaccess с gulp не удалось - PullRequest
0 голосов
/ 27 декабря 2018

В задании gulp я пытаюсь скопировать файлы в папку сборки.

gulp.task( addon, function() {
    var a_addon_function = addon.split("_") ;
    var addon_dirname = a_addon_function[1];
    var dest_path = ( options.env === "tests" || ( options.env === "dist" && options.type === "premium" ) ) ? build_path + addon_dirname + "/" + addon_dirname : build_path + addon_dirname;
    return gulp.src( [ "./plugins/addons/" + addon_dirname + "/**/*", "./plugins/_common/**/*", "./plugins/addons/_common/**/*" ] )
       .pipe( gulp.dest( dest_path ) 
    );
});

Файл .htaccess никогда не копируется.Зачем ?Как решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Точки

Если часть пути к файлу или каталогу имеет.в качестве первого символа, он не будет совпадать ни с одним шаблоном glob, если соответствующая часть пути этого шаблона также не имеет a.в качестве первого символа.

Например, шаблон a/.*/c будет соответствовать файлу на a/.b/c.Однако шаблон a/*/c не будет, потому что * не начинается с символа точки.Вы можете сделать, чтобы glob рассматривал точки как обычные символы, установив dot: true в опциях.

Установите опцию:

gulp.src('...…….', { dot: true }) 

, чтобы точка воспринималась как любой другой символ,Тогда вы сможете использовать свой оригинальный gulp.src.

С документация по glob-узлам

0 голосов
/ 27 декабря 2018

Скопируйте файл .htaccess, если я добавлю прямой путь к этому файлу: ./plugins/_common/.htaccess.

 gulp.task( addon, function() {
    var a_addon_function = addon.split("_") ;
    var addon_dirname = a_addon_function[1];
    var dest_path = ( options.env === "tests" || ( options.env === "dist" && options.type === "premium" ) ) ? build_path + addon_dirname + "/" + addon_dirname : build_path + addon_dirname;
    return gulp.src( [ "./plugins/addons/" + addon_dirname + "/**/*", "./plugins/_common/**/*", "./plugins/_common/.htaccess", "./plugins/addons/_common/**/*" ] )
       .pipe( gulp.dest( dest_path ) 
   );
});

Возможно, он не скопирован, поскольку .htaccess не имеет файла расширения.

...