2015-05-01 6 views
0

Я работаю над файлами сайта за пределами локальных htdocs, которые я хочу развернуть на локальный сайт. Я буду использовать gulp-watch, чтобы следить за изменениями, но я натыкаюсь на настройку rsync. Структура файла:как gulp rsync локально

sitename/ -- 
    --htdocs/sites/all/themes/themename 
    --source/themes/themename 

И вот gulpfile:

var gulp = require('gulp'); 
var rsync = require('gulp-rsync'); 

gulp.task('deploy', function() { 
    gulp.src('source/**') 
    .pipe(rsync({ 
    root: 'source', 
    destination: '/htdocs/sites/all' 
    })); 
}); 

И когда я бежать gulp deploy

[11:36:53] Using gulpfile ~/Sites/sitename/gulpfile.js 
[11:36:53] Starting 'deploy'... 
[11:36:53] Finished 'deploy' after 5.23 ms 

Ничего не написано в любом месте. Я пропустил что-то очевидное ...

ответ

0

rsync не подходит для «удаленной синхронизации» и, следовательно, требуется место назначения, отличное от вашей локальной системы. Если вы хотите синхронизировать материал из одного каталога в другой, просто используйте встроенные методы gulp.

gulp.task('deploy', function() { 
    gulp.src('source/**') 
     .pipe(gulp.dest('/htdocs/sites/all'); 
}); 

Это скопирует все, что вам нужно, в другую папку. Если вы хотите также удалить файлы, добавьте это своему наблюдателю:

var watcher = gulp.watch('./source/**/*', ['deploy']); 
watcher.on('change', function(ev) { 
    if(ev.type === 'deleted') { 
     // path.relative gives us a string where we can easily switch 
     // directories 
     del(path.relative('./', ev.path).replace('./source','/htdocs/sites/all')); 
    } 
}); 
+0

Отличный, иногда самый простой материал уклоняется от новичка. Коррекция синтаксиса: – icicleking

+0

.pipe (gulp.dest ('./ htdocs/sites/all')); – icicleking

Смежные вопросы