Tôi đã cài đặt tác vụ grunt grunt-contrib-copy
. Tôi đã nhúng nó vào số Gruntfile.js
và tải tác vụ qua grunt.loadNpmTasks('grunt-contrib-copy');
.Định cấu hình tác vụ sao chép grunt để loại trừ các tệp/thư mục
Hiện tại tôi đang sử dụng cấu hình sau để tạo thư mục có tập hợp con các tệp/thư mục js của tôi.
copy: {
options: {
processContent: [],
processContentExclude: ['build/**', 'bin/**', '.*', '*.orig', '*.bak', '.*/**', '*.log', 'dist/**', 'test/**', 'dev/**', 'pyserver/**', 'node_modules/**', 'doc/**']
},
du: {
files: [
{src: ['.conf1', '.conf2', './config.js'], dest: 'output/toolkit/', filter: 'isFile'},
{src: ['./css/**/*', './img/**/*', './js/**/*', './release/**/*', './lib/**/*', './locale/**/*'], dest: 'output/toolkit/'},
{expand: true, cwd: './', src: ['**'], dest: 'output/'}
]
}
}
này hoạt động tốt, nhưng mọi lúc tôi chạy grunt sao chép nó thoát với thông báo lỗi sau:
Copying Gruntfile.js -> output/Gruntfile.js
Warning: Error while processing "Gruntfile.js" file. Use --force to continue.
Tôi muốn loại trừ Gruntfile.js
và tất cả các tập tin trong *.less
js/**/*
. Đã thử nó với !(.less), !.less, !(*.less), !(./Grunfile.js), !(*Gruntfile.js)
... Nhưng không có gì hoạt động. Đã thêm nó vào mảng processContentExclude
, nhưng cũng không thành công.
Vậy làm cách nào để loại trừ Gruntfile.js
và tất cả các tệp ít hơn trong cấu trúc thư mục js/**/*
?
Để bỏ qua các thư mục, sử dụng '! Workingdir/omitted/**' – Ben