@wwanghee
2017-08-29T00:36:17.000000Z
字数 1456
阅读 867
gulp-file-compare

1、准备工作(若已完成,则忽略)
安装最新版的venus客户端:
sudo tnpm install -g @tencent/venus
安装最新的node模块,在server/node_modules/gxh下最新的package.json,并执行:
tnpm install
2、在对应项目的gulpfile.js中引用node模块
var args = require('yargs').argv;var fileCompare = require('@tencent/gulp-file-compare');var StatsPlugin = require('stats-webpack-plugin');
3、在gulpfile.js中的修改webpack任务
gulp.task('webpack', ['cssUrlToAbsolute'], function () {var webpackConfig = require(currentPath + '/webpack.config.js');webpackConfig.plugins = webpackConfig.plugins || [];webpackConfig.plugins.push(new StatsPlugin('../../../module_dev/' + type + '/profile.json'));console.log('webpack task start');return gulp.src(currentPath + '/js/*.js').pipe(webpack(webpackConfig)).pipe(gulp.dest(destPath + '/js'));});
4、在gulpfile.js中添加fileCompare任务
gulp.task('fileCompare', ['inline'], function () {console.log('fileCompare task start');return gulp.src('').pipe(fileCompare({committer: args.user || 'felithuang',entryPath: currentPath,force: args.force || 0}))});
这里fileCompare有三个参数,不用修改,直接复制即可。
将fileCompare任务插入到inline任务和compress任务中间

5、参考DEMO
6、接入此插件后,需要有用户信息,故发布命令修改为:
venus -t tswBubbleNext -u wonderhwang(填自己的RTX名)
1)-u 表示 --user,用户名
2)如果有需要,可以做成配置的形式,形如venus.conf这种,将用户信息配置进去
7、不符合发布要求(既有夹带)会有提示报错

若确认此夹带可以夹带,则执行编译命令时,添加「-F」,强制执行参数。例如:
venus -t tswEmoji -e pre -F
执行此命令可以不带-u参数,即
venus -t tswEmoji -e pre -F 和
venus -t tswEmoji -e pre -u wonderhwang(填自己的RTX名) -F
是相同的。
[2017-01-10]
1、解决服务端编译的兼容性问题[2017-01-11]
1、解决本地编译的兼容性问题[2017-03-14]
1、增加防夹带插件原理