javascript - Gulp 复制文件夹结构,但只对文件进行符号链接(symbolic link)

标签 javascript gulp

我有一个具有特定文件夹结构的项目和另一个应该基本相同的项目,只有一些文件不同。

我想写一个gulp-task(或多个任务)来复制第一个项目文件夹结构,但只为文件创建符号链接(symbolic link),并且不要覆盖其他项目中已有的文件。

我发现我可以使用 gulpvinyl-fs 创建 symlinks

我尝试创建一个两步任务。首先,我尝试复制文件夹结构,但我不知道如何告诉 gulp 我只关心文件夹结构

其次,我想创建一个 symlink 任务,在正确的目录中创建 symlinks

也许,我可以使用函数参数仅使用 vinyl-fs 的符号链接(symbolic link)来创建它,但我不知道如何做。

最佳答案

看起来你可以这样做来只复制文件夹(不包括*.*):

gulp
    .src(['base/path/**/*', '!base/path/**/*.*'])
    .pipe(gulp.dest('target'));

假设您的所有文件都有某种扩展名(例如 *.jpg)。

对于 symlinks,以下是否有效?:

var vfs = require('vinyl-fs');

...
vfs
    .src('base/path/**/*', { followSymlinks: false, nodir: true })
    .pipe(vfs.symlink('target'));
...

关于javascript - Gulp 复制文件夹结构,但只对文件进行符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42922461/

相关文章:

javascript - 加载css文件到textarea

javascript - 在使用 HTML、CSS、Javascript 的三 Angular 测验网站上工作,我想在测验中显示 % 正确但没有显示

javascript - gulp-sass imagePath 不工作

javascript - 使用 gulp-size 显示构建的总大小

javascript - Gulp 任务不等待上一个任务完成

javascript - JQuery $().each 退出太早

javascript - Firestore 无法读取\n jspdf 字符串

c# - 使用 C# 从服务器端访问 javascript 中的动态变量

node.js - 无法在 Vagrant VM 上启动 gulp(Ubuntu、precision64)

node.js - npm安装 Darwin 错误