Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

grunt-contrib-copy - ignore folder when copying

Given the following source tree:

dev  丨- psd      丨- psd.psd      丨- png.png  丨- css      丨- css.css  丨- image      丨- 1.jpg      丨- 2.png  丨html.html 

How do I copy to the pub directory ignoring the psd folder as seen below?

pub  丨- css      丨- css.css  丨- image      丨- 1.jpg      丨- 2.png  丨html.html 

I tried the following:

{  expand: true,  src: ['dev/**/*', '!dev/psd/**/*'],  dest: 'pub/' } 

But this results in an empty psd directory

like image 317
kimsagro Avatar asked Mar 04 '14 01:03

kimsagro


1 Answers

Try following Gruntfile.js. It ignores psd directory. Solution found in following question.

module.exports = function(grunt) {    // Project configuration.   grunt.initConfig({         copy: {           main: {             src: ['**/*',  '!**/psd/**'],             expand: true,             cwd: 'dev',             dest: 'pub',           }     }   });    // Load the plugin that provides the "copy" task.     grunt.loadNpmTasks('grunt-contrib-copy');    // Default task(s).   grunt.registerTask('default', ['copy']);  }; 

example setup.

mkdir gruntQuestion1 cd gruntQuestion1/ mkdir dev mkdir dev/psd mkdir dev/css mkdir dev/image touch dev/html.html touch dev/psd/psd.psd touch dev/psd/png.png touch dev/css/css.css touch dev/image/1.jpg touch dev/image/2.png   atilla$ rm -rf pub/ atilla$ grunt Running "copy:main" (copy) task Created 2 directories, copied 4 files  Done, without errors. atilla$ tree pub/ pub/ ├── css │   └── css.css ├── html.html └── image     ├── 1.jpg     └── 2.png  2 directories, 4 files     
like image 189
Atilla Ozgur Avatar answered Nov 10 '22 07:11

Atilla Ozgur