我正在使用gulp-zip压缩我的源文件.所以我有一个名为FIFA的主文件夹,它有其他子文件夹,可能有更多的子文件夹和文件.此外,FIFA文件夹还包含我的package.json,gulp.js和其他一些文件.我想基本上使用gulp-zip压缩我的整个项目并创建一个名为distribution的文件夹并将zip保存在其中.所以这是我使用的代码.
gulp.task('zip', function () {
return gulp.src('./*,')
.pipe(zip('test.zip'))
.pipe(gulp.dest('./distribution'));
});
Run Code Online (Sandbox Code Playgroud)
问题是虽然在分发文件夹中创建了一个zip,zip只包含FIFA文件夹中的文件,但FIFA子文件夹中的所有文件都不存在.因此,例如,如果FIFA有一个名为ronaldo的子文件夹,而ronaldo包含goal.js,则goal.js不在zip中.我做错了什么?请指教.
我已经开始使用Gulp JS并且必须承认我发现它非常有用.
我需要执行的任务之一是将一组文件夹压缩成单独的zip文件,每个文件夹一个,然后将所有这些压缩文件压缩成一个zip文件.使用Gulp-Zip我已经成功地做到了这一点:
var modelFolders = [
'ELFH_Check',
'ELFH_DDP',
'ELFH_Free'
];
gulp.task('zipModels', function () {
for (var i = 0; i < modelFolders.length; i++) {
var model = modelFolders[i];
gulp.src('**/*', {cwd: path.join(process.cwd(), '/built_templates/' + model) })
.pipe(zip(model + '.zip'))
.pipe(gulp.dest('./built_templates'));
};
});
Run Code Online (Sandbox Code Playgroud)
这适用于输出ELFH_Check.zip,ELFH_DDP.zip和ELFH_Free.zip.但是,我需要将这些zip文件压缩成一个名为"Templates.zip"的zip文件,我还没有设法让这个任务起作用:
// zip up model files
gulp.task('zipTemplate', ['zipModels'], function () {
gulp.src('*.zip', {cwd: path.join(process.cwd(), './built_templates/') })
.pipe(zip('Templates_.zip'))
.pipe(gulp.dest('./built_templates'));
});
Run Code Online (Sandbox Code Playgroud)
有谁知道这是可能的还是我做错了什么?
我创建了一个 Gulp 任务来导出我的 Subversion 工作副本,然后对其进行压缩。隐藏(点)文件.htaccess存在于导出的目录中,但不在 ZIP 中。我错过了什么?
这是相关的代码:
var codigoProjecto = "foo";
var dirSalida = "./Servidor/archivos/tmp";
gulp.task('zip', function() {
var temp = require('temp');
var path = require('path');
var child_process = require('child_process');
var zip = require('gulp-zip');
var revision, nombreBase, dirExport;
temp.track();
revision = child_process.execFileSync('svn', [
'info',
'--show-item=last-changed-revision',
'--no-newline'
]);
revision = parseInt(revision, 10);
nombreBase = codigoProjecto + " " + (new Date()).toISOString().slice(0,10) + ' r' + revision;
dirExport = path.join(temp.mkdirSync(codigoProjecto + "-"), nombreBase);
gutil.log('Exportando copia de trabajo...');
child_process.execFileSync('svn', [ …Run Code Online (Sandbox Code Playgroud) 我有两个文件流
var chromefiles = gulp.src(['./src/chrome/*', './external/jquery.js', './icon/*']);
var userscriptfiles = gulp.src(['./src/meta.js', './src/jquery.extensions.js', './src/*.js'])
.pipe(concat('user.js'));
Run Code Online (Sandbox Code Playgroud)
我合并成一个zip文件
return merge(chromefiles, userscriptfiles)
.pipe(zip('overpress.zip'))
.pipe(gulp.dest('./'));
Run Code Online (Sandbox Code Playgroud)
我想将"chromefiles"中的所有文件放入名为"chrome"的子目录中,将"userscriptfiles"中的文件放入zip文件中名为"userscript"的目录中.我怎样才能做到这一点?
overpress.zip
|
|-userscript
| |-user.js
|
|-chrome
|-jquery.js
|-icon.png
|-someotherfile.js
Run Code Online (Sandbox Code Playgroud)