。それはもちろん、バージョン番号を繰り返すでしょう。Gulp:フォルダ名の読み方は?ユーザーが<code>V=1.2.88</code>など</p> <p>を入力する必要はありませんので、私はむしろ、私はちょうど<code>major gulp build</code>、<code>minor gulp build</code>または<code>patch gulp build</code>を入力するようにユーザーをしたいと思い、私のガルプのビルドプロセスをリファクタリングしてい
これが機能するためにしかし、私が作成した最後のビルドのフォルダ名を読み取るために飲み込む必要があります。
バージョン番号を生成し、私の現在のガルプタスク:
var version = '';
var env = process.env.V; // V={version number} ie: V=1.0.1 gulp build
gulp.task('version', function() {
return printOut(env);
});
function errorlog(err) {
console.log(err.message);
this.emit('end');
}
function printOut(ver) {
gutil.log(gutil.colors.blue.bold('Last build: '+paths.last));
version = ver;
if (version === undefined) {
version = '0.0.0';
}
gutil.log(gutil.colors.blue.bold('##################################################'));
gutil.log(gutil.colors.blue.bold(' Building Dashboard version '+version));
gutil.log(gutil.colors.green.bold('~~ All change is detectable ~~'));
gutil.log(gutil.colors.blue.bold('##################################################'));
}
誰でもGulpでこれを達成する方法を知っていますか?私は私のビルドを実行すると、以下のことをチェックアウト今
gulp.task('build:getLastBuild', folders(paths.lastBuild, function(folder) {
console.log('Last version number is: '+folder);
return lastVersion = folder;
//This will loop over all folders inside pathToFolder main, secondary
//Return stream so gulp-folders can concatenate all of them
//so you still can use safely use gulp multitasking
// return gutil.colors.blue.bold('Last build folder: '+folder);
// return gulp.src(path.join(paths.lastBuild, folder))
// .pipe(console.log(' Getting last version number: '+folder))
// .pipe(lastVersion = folder);
}));
:
この
は、私がこれまで Gulp-foldersは、だから私は、最初に実行、次のタスクを作成しGulp-folders
プラグインを使用して見つけたものです!私は:(しかし、にconsole.logで私のプロセスエラーをフォルダの名前を取得しています
TypeError: e.pipe is not a function
私は、あなたのビルドタスク「フォルダの名前を読んで」との関係を理解していません。しかし、私は 'yargs'(https://www.npmjs.com/package/yargs)を使うべきだと思うので、' gulp --major 2.2.2 build'のようなことができます。メジャーが最新バージョンの場合は、ノードの 'path'モジュールを使用して、最新のバージョンを見つけるためのソート機能を使用する必要があるかもしれません。 – cl3m
アイデアは、ユーザーがバージョン番号を知る必要もないことを確認することです。上記の例では、フォルダの名前を読みたいと思います: '1.2.8'そしてそれが' Major' 1 + 1、 'Minor' 2 + 1などの場合... –
https:// www.npmjs.com/package/semver-utilsでバージョンを確認し、 'fs.readdir()'や 'fs.readdirSync()'でディレクトリを読み込みますか? – cl3m