当前位置: 首页 > 软件库 > 服务器软件 > 文件同步 >

Gulp-File-Sync

Gulp 的文件同步插件
授权协议 MIT
开发语言 JavaScript
所属分类 服务器软件、 文件同步
软件类型 开源软件
地区 国产
投 递 者 乔鸿骞
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

这是一款 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 目录中被修改文件的路径。

  • 导读 在某些开发项目中,我们需要用到动态输出index.html文件,而这个页面文件内的资源也是需要动态加载的,就比如说在线面这些开发条件: 一些静态资源需要加版本号 动态编译sass,把编译后的内容动态植入html的style标签中,或者自动引用编译好的css文件 在index.html文件中,动态插入多个js文件的script脚本内容 如果你想往页面中动态插入一些你需要的一些内容,那gulp-

  • 关于gulpfile文件: 直接上代码吧!!   /*! * gulp * $ npm install gulp gulp-ruby-sass gulp-cached gulp-uglify gulp-rename gulp-concat gulp-notify gulp-filter gulp-jshint gulp-rev-append gulp-cssnano gulp-imagemin

  • gulp 构建前端项目(一) gulp基础应用 gulp构建前端项目(二) 压缩文件,监听修改,浏览器同步 gulp已经能打包和实时在浏览器中更新了,接下来就是 预防浏览器缓存对代码的影响。 通过修改文件名包含MD5值,可以预防无效缓存。 由于名称修改就会有变化,所以加入了自动引入修改后的文件名。 1.通过 gulp-rev 插件给文件名加MD5的后缀。 在处理css或者js文件过程中,调用 gu

  • 转自:http://blog.csdn.net/franks_t_d/article/details/52763310 本篇前言 上一篇介绍了本工具的功能、结构、命令,欢迎阅读。 为了让大家更好的了解gulp的强大,本篇将单独对本工具所用的所有gulp插件/gulp模块进行列举介绍,gulp模块的安装方法请点击模块的介绍链接,推荐使用淘宝镜像的npm进行。 gulp插件/gulp模块 gulp 介

  • Running an on-demand PHP server with BrowserSync and Grunt/Gulp 21 March 2015 by @ddprrt | Posted in: PHP, Tools, BrowserSync, Gulp, Grunt Quite a while ago I wrote a little article on connect middlew

  • 简单说来,gulp的api非常简单。只有4个,他们分别是gulp.src, gulp.dest, gulp.task, gulp.watch 因此,想要简单的使用gulp很容易,但是想要将gulp使用到得心应手的地步并不是一件简单的事情。 而其中最关键的地方在于,对nodejs文件路径匹配模式globs的理解。 gulp的4个api中, gulp.task创建一个任务, gulp.src表示创建的

  • 结语:   使用gulp-compass时,需要指定 relative:false ,绝对定位 ( 如http_images_path参数 ) 才有效,代码: gulp.task('compass', function() { gulp.src('sass/{,*/}*.scss') .pipe(compass({ config_file: './c

  • browser-sync Browsersync 能让浏览器实时、快速响应您的文件更改(html、js、css、sass、less等)并自动刷新页面。 config.js 配置文件 var src = 'src'; var dest = 'dist'; module.exports = { version: '1.0.0', src: src, dest: dest,

 相关资料
  • 本文讲解cordova-plugin-file插件以及如何在Wex5中使用该插件。 目录: 1.插件概述 2.插件使用 <1>配置插件 <2>文件存储位置 <3>系统文件列表 <4>Android注意事项 <5>iOS注意事项 <6>cdvfile协议 <7>错误码 <8>手机应用目录结构 <9>示例代码 1.插件概述 文件管理插件,提供了读写设备文件的API。 2.插件使用 <1>配置插件(可选

  • 本文向大家介绍gulp-htmlmin压缩html的gulp插件实例代码,包括了gulp-htmlmin压缩html的gulp插件实例代码的使用技巧和注意事项,需要的朋友参考一下 通过一条命令用Npm安装gulp-htmlmin: npm install gulp-htmlmin --save-dev   安装完毕后,打开gulpfile.js文件,我们里面编写一个task用来专门压缩html,并

  • 本文向大家介绍如何编写javascript的gulp插件,包括了如何编写javascript的gulp插件的使用技巧和注意事项,需要的朋友参考一下 很久以前,我们在"细说gulp"随笔中,以压缩JavaScript为例,详细地讲解了如何利用gulp来完成前端自动化。 再来短暂回顾下,当时除了借助gulp之外,我们还利用了第三方gulp插件”gulp-uglify”,来达到压缩JavaScript文

  • 用于读取、写入和浏览文件系统层次结构的API。 对象: DirectoryEntry DirectoryReader File FileEntry FileError FileReader FileSystem FileTransfer FileTransferError FileUploadOptions FileUploadResult FileWriter Flags LocalFileSy

  • 本文向大家介绍简单谈谈gulp-changed插件,包括了简单谈谈gulp-changed插件的使用技巧和注意事项,需要的朋友参考一下 前言 gulp-changed插件的作用,是用来过滤未被修改过的文件,只有修改后的文件才能通过管道。这样做的好处时,只处理修改后的文件,减少后续程序的执行时间。 根据官方给出的例子: 检测SRC中的文件,然后把从changed()通过的文件输出到DEST文件夹中,

  • 本文向大家介绍jQuery File Upload文件上传插件使用详解,包括了jQuery File Upload文件上传插件使用详解的使用技巧和注意事项,需要的朋友参考一下  jQuery File Upload 是一个Jquery文件上传组件,支持多文件上传、取消、删除,上传前缩略图预览、列表显示图片大小,支持上传进度条显示;支持各种动态语言开发的服务器端。 官网链接:https://gith