Загрузка винила по FTP занимает слишком много времени
В моем проекте мне нужен gulp для просмотра файлов на предмет изменений в моей папке /src/ и загрузки их в папку /public/ ftp.
Проблема в том, что это занимает слишком много времени, потому что винил-ftp сначала получает список всех папок в проекте по алфавиту и загружает новые файлы только тогда, когда достигает папки, содержащей измененный файл.
Вот моя задача развертывания:
gulp.task('deploy', function () {
var conn = ftp.create({
host: '123',
user: '123',
password: '123',
parallel: 1,
log: gutil.log
});
var globs = [
'src/**',
'!' + baseskindir + '_fonts/**',
'!' + baseskindir + '_img/**',
'!' + baseskindir + '_js/**',
'!' + baseskindir + '_scss/**',
'!' + baseskindir + 'css/maps/**',
'!' + baseskindir + '_sprite/**'
];
// using base = '.' will transfer everything to /public_html correctly
// turn off buffering in gulp.src for best performance
return gulp.src(globs, {base: './src', buffer: false})
.pipe(conn.newerOrDifferentSize('/123/public')) // only upload newer files
.pipe(conn.dest('/123/public'));
});
Результат этой задачи:
Starting 'deploy'...
[17:14:02] CONN
[17:14:03] READY
[17:14:03] MLSD /stage.123.com/
[17:14:03] LIST /stage.123.com/
[17:14:03] MLSD /stage.123.com/public
[17:14:03] LIST /stage.123.com/public
[17:14:03] MLSD /stage.123.com/public/GeoIp
[17:14:03] LIST /stage.123.com/public/GeoIp
[17:14:04] MLSD /stage.123.com/public/skin
[17:14:04] LIST /stage.123.com/public/skin
[17:14:04] MLSD /stage.123.com/public/app
[17:14:04] LIST /stage.123.com/public/app
[17:14:04] MLSD /stage.123.com/public/js
[17:14:04] LIST /stage.123.com/public/js
[17:14:04] MLSD /stage.123.com/public/skin/adminhtml
[17:14:04] LIST /stage.123.com/public/skin/adminhtml
[17:14:04] MLSD /stage.123.com/public/app/code
[17:14:04] LIST /stage.123.com/public/app/code
[17:14:04] MLSD /stage.123.com/public/app/design
[17:14:04] LIST /stage.123.com/public/app/design
[17:14:04] MLSD /stage.123.com/public/skin/frontend
[17:14:04] LIST /stage.123.com/public/skin/frontend
[17:14:05] MLSD /stage.123.com/public/app/etc
[17:14:05] LIST /stage.123.com/public/app/etc
[17:14:05] MLSD /stage.123.com/public/app/locale
[17:14:05] LIST /stage.123.com/public/app/locale
[17:14:05] MLSD /stage.123.com/public/js/onestepcheckout
[17:14:05] LIST /stage.123.com/public/js/onestepcheckout
И это продолжается и продолжается, пока не достигнет папки с измененным файлом.
Это загрузит это рано или поздно, но я просто не могу ждать это больше.