Gulp 的文件同步插件 Gulp-File-Sync

MIT
JavaScript 查看源码»
跨平台
2016-10-18
kayo5994

这是一款 Gulp 的插件,其功能是使源目录和目标目录之间的文件操作保持同步,当检测到源目录的文件有增加/删除/更新时,会自动同步到目标目录。

Github:https://github.com/kayo5994/gulp-file-sync

安装

npm install --save-dev gulp-file-sync

使用

var gulp = require('gulp'),
    fileSync = require('gulp-file-sync');

gulp.task('sync', function() {
  gulp.watch(['src/*.*'], function() {
    fileSync('src', 'dest', {recursive: false});
  });
});

API 列表

fileSync('source directory', 'destination directory', options)

'source directory' and 'destination directory'

type: String

当 'source directory' 目录发生任何文件变化时会自动同步到 'destination directory' 目录。

options.recursive

type: Boolean

default: true

是否对目录递归调用。

options.ignore

type: string or array or regex or function

排除特定的文件,支持字符串,正则,函数(返回值是被排除的文件),例如:

// ignore all .log files
fileSync('source directory', 'destination directory', {
  ignore: '.log'  
})
fileSync('source directory', 'destination directory', {
  ignore: [/^\.log$/i, '.cache'] // Exclude all .log and .cache files
})
fileSync('source directory', 'destination directory', {
  ignore: /^\.log$/i 
})
fileSync('source directory', 'destination directory', {
  ignore: function(dir, file) {
            return file === '.log';
          } 
})

options.addFileCallback

type: function(fullPathSrc, fullPathDest)

default:

var gutil = require('gulp-util');
function(fullPathSrc, fullPathDest) {
  gutil.log('同步增加文件到 ' + fullPathDest);
}

当 source directory 有新增文件时会调用该方法。

  • fullPathSrc - source directory 目录中新增文件的路径。

  • fullPathDest - destination directory 目录中同步新增的文件的路径。

options.deleteFileCallback

type: function(fullPathSrc, fullPathDest)

default:

var gutil = require('gulp-util');
function(fullPathSrc, fullPathDest) {
  gutil.log('同步删除文件 ' + fullPathDest);
}

当 source directory 有文件被删除时会调用该方法。

  • fullPathSrc - source directory 目录中被删除文件的路径。

  • fullPathDest - destination directory 目录中同步删除的文件的路径。

options.updateFileCallback

type: function(fullPathSrc, fullPathDest)

default:

var gutil = require('gulp-util');
function(fullPathSrc, fullPathDest) {
  gutil.log('同步修改文件 ' + fullPathDest);
}

当 source directory 有文件被修改时会调用该方法。

  • fullPathSrc - source directory 目录中被修改文件的路径。

  • fullPathDest - destination directory 目录中同步修改的文件的路径。

options.beforeAddFileCallback

type: function(fullPathSrc)

当 source directory 有新增文件,但并未开始同步时调用该方法。

  • fullPathSrc - source directory 目录中新增文件的路径。

options.beforeDeleteFileCallback

type: function(fullPathSrc)

当 source directory 有文件被删除,但并未开始同步删除时调用该方法。

  • fullPathSrc - source directory 目录中被删除文件的路径。

options.beforeUpdateFileCallback

type: function(fullPathSrc)

当 source directory 有文件被修改,但并未开始同步修改时调用该方法。

  • fullPathSrc - source directory 目录中被修改文件的路径。

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

使用gulp和browserSync实现页面自动刷新

在平时开发时,我用过很多gulp的自动刷新工具,昨天试了下browser-sync这款插件,感觉确实不错,分享给大家。 gulp和browser-sync的安装就不多介绍了,下面给出命令 ```bash $ cnpm install...

2016/06/25 00:52
180
0
Gulp 自动化你的前端

前端(段子)界的发展突飞猛进,总感觉随时会跟不上技术潮流(其实我已经被甩开了一条街,so sad 选择在这样一个时机发布一篇 gulp 教程并不是我的初衷,第一次用 gulp 是在一年前,而这篇帖...

2018/11/04 10:17
33
0
关于gulp 压缩css js img 心得

这是window系统下的gulp

2016/12/09 17:54
118
1
我用HTML写简历

本文属于原创文章,转载请注明--来自桃源小盼的博客 起因 每次换工作写简历都是有点痛苦的事情,尤其是下载word模板,各种注册流程,有的还得买积分,冲会员,甚是不爽。就算下载好了,修改其...

2018/09/24 14:13
27
0
使用gulp进行简易react环境搭建(适合写demo用)

这篇文章主要针对于react环境搭建,至于如何安装Node和gulp,这里就不再赘述了。 首先说一下所需要的包,我最推荐的是 gulp+gulp-reactify(gulp编译reactify的插件)+react-tools(配置gul...

2016/11/21 11:35
412
0
插件

VSCode 拓展插件推荐 插件列表 Auto Close Tag 自动闭合HTML标签 Auto Rename Tag 修改HTML标签时,自动修改匹配的标签 Bookmarks 添加行书签 Can I Use HTML5、CSS3、SVG的浏览器兼容性检查...

02/18 17:02
5
0
gulp的自动化开发环境配置

学习gulp的一些心得(续),主要就是完成gulp的自动编译和browser自动更新显示

2016/05/27 18:01
135
0
【天赢金创】探究Gulp的Stream

来自Gulp的难题 描述Gulp的项目构建过程的代码,并不总是简单易懂的。 比如Gulp的这份recipe: var browserify = require('browserify'); var gulp = require('gulp'); var source = require...

2015/09/21 14:08
27
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部