Sha256: 47df3f62a2207fc46d22c9c6fb6a583b292c895bd737df5e12e9d8648bff7d63

Contents?: true

Size: 1.34 KB

Versions: 1

Compression:

Stored size: 1.34 KB

Contents

#!/usr/bin/env ruby

require 'git-version-bump'

if ARGV[0].nil? or
   ARGV[0].empty? or
   (ARGV.length == 1 && (ARGV[0] == "-d" || ARGV[0] == "--dry-run")) or
   ARGV[0] == '-h' or
   ARGV[0] == '--help'
	$stderr.puts <<-EOF.gsub(/^\t\t/, '')
		Usage: git version-bump [-n|--notes] [-d|--dry-run] <major|minor|patch|show>

		'major': x.y.z -> x+1.0.0
		'minor': x.y.z -> x.y+1.0
		'patch': x.y.z -> x.y.z+1

		'show': Display the current GVB version

		-d, --dry-run: Calculate and return the bump value, but don't update git workspace or remote
		-n, --notes: Prompt for "release notes" to add to the release tag
	EOF
end

release_notes = ARGV.delete('-n') || ARGV.delete('--notes')
dry_run = ARGV.delete('-d') || ARGV.delete('--dry-run')

if ARGV[0].nil? or ARGV[0].empty?
	exit 1
elsif ARGV[0] == '-h' or ARGV[0] == '--help'
	exit 0
end

result = case ARGV[0].downcase
	when /^maj?o?r?$/
		"#{GVB.major_version(true) + 1}.0.0"
	when /^min?o?r?$/
		"#{GVB.major_version(true)}.#{GVB.minor_version(true)+1}.0"
	when /^pa?t?c?h?$/
		"#{GVB.major_version(true)}.#{GVB.minor_version(true)}.#{GVB.patch_version(true)+1}"
	when /^sh?o?w?$/
		puts GVB.version(true)
		exit 0
	else
		$stderr.puts "Unknown argument: #{ARGV[0]}.  Try --help."
		exit 1
end

if dry_run
	puts result
else
	GVB.tag_version result, release_notes
	puts "Version is now #{GVB.version(true)}."
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
git-version-bump-0.16.0 bin/git-version-bump