grunt-contrib-compress排除点文件夹

时间:2014-07-11 10:13:08

标签: gruntjs grunt-contrib-compress

我正在使用grunt-contrib-compress任务来压缩ZIP存档中dist /文件夹的内容。为此,我使用以下配置:

compress: {
  dist: {
    options: {
      archive: 'dist/<%= pkg.name %>-<%= pkg.version %>.zip'
    },
    files: [{
      cwd: 'dist/',
      expand: true,
      src: [ '**' ]
    }]
  }
},

这很好用(所有文件都是压缩的),但是,它还添加了一个名为“。”的文件夹。我想它就在那里,因为我包括**,它还包括当前文件夹(单个点)。

例如:

enter image description here

有没有办法阻止将此文件夹添加到ZIP?

我尝试将!.添加到我的src,但这似乎没有成功。我还阅读了dot属性,但将其设置为false也无济于事。

1 个答案:

答案 0 :(得分:2)

您需要src: ['**/*'],因为minimatch中的**是&#34; Globstar&#34; matcher,它匹配包括目录本身在内的所有内容(点目录)。但是,模式**/*表示&#34;包括所有文件和子目录&#34;但是dot-directory既不是子目录也不是文件,它与它不匹配。