使用grunt skip source文件夹复制文件

时间:2014-11-03 08:21:41

标签: gruntjs grunt-contrib-copy

项目中有 source 文件夹和发布文件夹。我想将所有文件和文件夹从源代码复制到发布。

enter image description here

Gruntfiles.js的相关代码:

grunt.initConfig({
        copy: {
          main: {
            files: [
              { src: ['source/**/*'], dest: 'publish/'},
              ]
          }
      }
});

    grunt.loadNpmTasks('grunt-contrib-copy');
    grunt.registerTask('default', ['copy']);

然而,它会复制 source 文件夹本身,并放入发布文件夹。

enter image description here

尝试了grunt-copy文档中的大量变体,无法找到解决方案。

2 个答案:

答案 0 :(得分:1)

尝试此配置:

grunt.initConfig({
    copy: {
        main: {
            cwd: 'source',
            src: ['**/*'],
            dest: 'publish/',
            expand: true
        }
    }
});

答案 1 :(得分:0)

如果您只想复制SRC的某些部分并在正常流程(SASS,CONCAT,MINIFY插件)上构建其他部分,您可以选择:

copy: {
  main: {
    files: [
      {expand: true, cwd: '../src/', src: ['images/*'], dest: '../public/images'},
      ...
    ]
  }
}

上面的关键点是CWD,它允许你按原样复制文件夹而不是复制“public”中的“src”。