node package manager


Bump the version property of a JSON file.

grunt-svn-bump v0.2.0

This is mostly a copy of grunt-contrib-bump for svn projects.

Bump the version property of a JSON file, the date property if it exists, and commit those changes.

Note that this will commit your bump changes but will not create a tag the repo afterwards. See grunt-svn-tag.

Getting Started

This plugin requires Grunt ~0.4.1

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-contrib-bump --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:


Bump task

Run this task with the grunt bump command.



Type: String|Array
Default: ['package.json']

File paths of the meta file(s) you wish to operate on.


Type: Boolean
Default: false

If syncVersions is enabled, only grab version from the first file, guaranteeing new versions will always be in sync.


Type: Boolean
Default: true

Whether to commit the release.


Type: String
Default: 'Bumping version to 0.1.0.'

The message format to use when committing a release.


Type: Boolean Default: true

Whether to set the date attribute, if it exists, to the current date.

Usage examples

grunt bump:major        # bump major version, eg. 1.0.2 -> 2.0.0
grunt bump:minor        # bump minor version, eg. 0.1.3 -> 0.2.0
grunt bump:patch        # bump minor version, eg. 0.0.1 -> 0.0.2
### If the current version is already a prerelease version, this will work.
grunt bump:prerelease   # bump prerelease version, eg. 0.0.1-9 -> 0.0.1-10
### But if it isn't you'll run into an improperly bumped version.
grunt bump:prerelease   # bump prerelease version, eg. 1.0.2 -> 1.0.2-0
grunt bump:prerelease   # bump prerelease version, eg. 0.1.3 -> 0.1.3-0
grunt bump:prerelease   # bump prerelease version, eg. 0.0.1 -> 0.0.1-0
### Because prerelease has no idea if you're going from 0.0.1 to 0.0.2-0
### or 0.1.0-0 or 1.0.0-0, you need to use it in conjunction with one of
### the other three semver increment modes. You can specify any number of
### :-separated modes.
grunt bump:major:prerelease   # eg. 1.0.2 -> 2.0.0-0
grunt bump:minor:prerelease   # eg. 0.1.3 -> 0.2.0-0
grunt bump:patch:prerelease   # eg. 0.0.1 -> 0.0.2-0
### You can also use abbreviations, as long as they aren't ambiguous
grunt bump:ma:pr   # still works, eg. 1.0.2 -> 2.0.0-0
grunt bump:mi:pr   # still works, eg. 0.1.3 -> 0.2.0-0
grunt bump:pa:pr   # still works, eg. 0.0.1 -> 0.0.2-0