Jadi - solusi menyediakan karya dasar mengingat bahwa semua jalur memiliki jalur dasar yang sama. Tetapi jika Anda ingin memberikan jalur dasar yang berbeda, ini masih tidak akan berhasil.
Salah satu cara saya memecahkan masalah ini adalah dengan membuat awal jalur relatif. Untuk kasus Anda:
gulp.src([
'index.php',
'*css/**/*',
'*js/**/*',
'*src/**/*',
])
.pipe(gulp.dest('/var/www/'));
Alasan ini berhasil adalah bahwa Gulp menetapkan basis menjadi akhir dari chunk eksplisit pertama - the * menyebabkannya untuk menetapkan basis pada cwd (yang merupakan hasil yang kita semua inginkan!)
Ini hanya berfungsi jika Anda dapat memastikan struktur folder Anda tidak akan memiliki jalur tertentu yang bisa cocok dua kali. Misalnya, jika Anda memiliki randomjs/
level yang sama dengan js
, Anda akan berakhir dengan mencocokkan keduanya.
Ini adalah satu-satunya cara yang saya temukan untuk memasukkan ini sebagai bagian dari fungsi gulp.src tingkat atas. Akan lebih mudah untuk membuat plugin / fungsi yang dapat memisahkan masing-masing gumpalan tersebut sehingga Anda dapat menentukan direktori dasar untuknya.