log2changes: correct command line, fix tag usage, change Version output

--decorate=full is needed with my git 1.7.1 to get the necessary
output so that the previous edit would work to extract the
Version stuff.

... but I had to edit how the refs/tags was extracted since it
had a little flaw that made it miss the 7.20.1 output.

Finally, I changed so that Version is outputted even more similar
to how CHANGES does it.
This commit is contained in:
Daniel Stenberg 2010-06-21 22:21:25 +02:00
parent 8e7ec794f5
commit d8383220ec

View File

@ -1,6 +1,6 @@
#!/usr/bin/perl
# git log --pretty=fuller --no-color --date=short --decorate
# git log --pretty=fuller --no-color --date=short --decorate=full
my @mname = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' );
@ -32,7 +32,7 @@ while(<STDIN>) {
if($l =~/^commit ([[:xdigit:]]*) ?(.*)/) {
$co = $1;
my $ref = $2;
if ($ref =~ /refs\/tags\/curl-(.*)\)/) {
if ($ref =~ /refs\/tags\/curl-([0-9_]*)/) {
$tag = $1;
$tag =~ tr/_/./;
} else {
@ -50,16 +50,17 @@ while(<STDIN>) {
}
elsif($l =~ /^( )(.*)/) {
my $extra;
if ($tag) {
# Version entries have a special format
print "\nVersion " . $tag." ($date)\n";
$oldc = "";
}
if($a ne $c) {
$extra=sprintf("\n- [%s brought this change]\n\n ", $a);
}
else {
$extra="\n- ";
}
if ($tag) {
# Version entries have a special format
$c = "Version " . $tag;
}
if($co ne $oldco) {
if($c ne $oldc) {
print "\n$c ($date)$extra";