使用 webpack 获取 git-revision hash
Getting git-revision hash with webpack
我正在尝试使用后缀为 git-revision 的 webpack 创建存档。你能告诉我有什么好的方法吗?
您可以将 git-rev、arciverjs 和 on-build-webpack 插件组合用于这些目的
https://www.npmjs.com/package/git-rev
https://www.npmjs.com/package/on-build-webpack
var childProcess = require('child_process'),
VERSION = childProcess.execSync('git rev-parse HEAD').toString();
var WebpackOnBuildPlugin = require('on-build-webpack');
var plugins = [
//...
new WebpackOnBuildPlugin(function(stats) {
var fs = require('fs');
var archiver = require('archiver');
var output = fs.createWriteStream(__dirname + '/' + VERSION + '-example.tar');
var archive = archiver('tar');
output.on('close', function() {
console.log(archive.pointer() + ' total bytes');
console.log('archiver has been finalized and the output file descriptor has closed.');
});
archive.on('error', function(err) {
throw err;
});
archive.pipe(output);
archive.bulk([
{ expand: true, cwd: 'source-dir/', src: ['*.*'] }
]);
archive.finalize();
})
];
这是来自 webpack 配置文件的代码片段,它将创建一个名称为修订版的存档。要获得 git 修订版,您可以使用 git-rev 插件或@boleamx
的答案中的代码片段
您可以通过以下方式在 webpack 中获取 git 修订版:
var childProcess = require('child_process'),
VERSION = childProcess.execSync('git rev-parse HEAD').toString();
我正在尝试使用后缀为 git-revision 的 webpack 创建存档。你能告诉我有什么好的方法吗?
您可以将 git-rev、arciverjs 和 on-build-webpack 插件组合用于这些目的
https://www.npmjs.com/package/git-rev
https://www.npmjs.com/package/on-build-webpack
var childProcess = require('child_process'),
VERSION = childProcess.execSync('git rev-parse HEAD').toString();
var WebpackOnBuildPlugin = require('on-build-webpack');
var plugins = [
//...
new WebpackOnBuildPlugin(function(stats) {
var fs = require('fs');
var archiver = require('archiver');
var output = fs.createWriteStream(__dirname + '/' + VERSION + '-example.tar');
var archive = archiver('tar');
output.on('close', function() {
console.log(archive.pointer() + ' total bytes');
console.log('archiver has been finalized and the output file descriptor has closed.');
});
archive.on('error', function(err) {
throw err;
});
archive.pipe(output);
archive.bulk([
{ expand: true, cwd: 'source-dir/', src: ['*.*'] }
]);
archive.finalize();
})
];
这是来自 webpack 配置文件的代码片段,它将创建一个名称为修订版的存档。要获得 git 修订版,您可以使用 git-rev 插件或@boleamx
的答案中的代码片段您可以通过以下方式在 webpack 中获取 git 修订版:
var childProcess = require('child_process'),
VERSION = childProcess.execSync('git rev-parse HEAD').toString();