使用grunt进行版本控制

时间:2017-01-05 03:16:02

标签: javascript gruntjs semantic-versioning

好吧所以我现在已经避免使用javascript了,不是因为我无法学习而是因为我喜欢简单的Html和Css。现在我正在钻研一个项目并希望自动化版本。遵循SemVer指南,我的项目版本为

"version": "0.32.0"

## v0.31.0 (Jan 1, 2017)

我的问题是我不知道如何自动化这个。我正在使用咕噜声并且

module.exports = function (grunt) {
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    replace: {
      version: {
        src: [
          'package.json',
          'bower.json'
        ],
        overwrite: true,
        replacements: [{
          from: 'oldver' ),
          to: 'newver' )
        }]
      }
    }
  });
  grunt.loadNpmTasks('grunt-text-replace');
  grunt.loadNpmTasks('grunt-stamp');

  grunt.registerTask('version', ['replace:version']);
  grunt.registerTask('label', ['stamp'])
};

我想要grunt读取package.json并阅读

"version": "0.32.0",

然后我希望它添加1,制作

"version": "0.33.0",

当然我也想让变量能够单独添加到vX.Y.Z。当然,如果它是vX.Y.Z-alpha.X.Y.Z我也希望能够单独更改它们。

1 个答案:

答案 0 :(得分:1)

对于那些稍后访问此问题的人。 grunt-bump处理它并与semver指南保持同步。