-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathbump-version.pl
More file actions
25 lines (21 loc) · 818 Bytes
/
bump-version.pl
File metadata and controls
25 lines (21 loc) · 818 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env perl
use File::Basename;
our $^I = ".bak";
my $dirname = dirname(__FILE__);
opendir DIR, $dirname or die $!;
(my $projectName = (grep { /\.sln$/ } readdir DIR)[0]) =~ s/(.+)\.sln$/$1/g;
closedir DIR or die $!;
my $version = @ARGV[0];
my $message = "Bumped version to $version";
my $info = "$dirname/$projectName/Properties/AssemblyInfo.cs";
`git flow release start $version`;
our @ARGV = ($info);
while (<>) {
s/^\[assembly: AssemblyVersion\("([\d\.]+)"\)\]/\[assembly: AssemblyVersion\("$version"\)\]/g;
s/^\[assembly: AssemblyFileVersion\("([\d\.]+)"\)\]/\[assembly: AssemblyFileVersion\("$version"\)\]/g;
print;
}
`git add $info` and `rm $info.bak`;
`git commit -m "$message"`;
`git tag -a $version -m "$message"` or `git tag -d $version`;
`git flow release finish $version -m "$message"`;