aboutsummaryrefslogtreecommitdiff
path: root/log2changes.pl
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2010-06-21 12:24:27 -0700
committerDan Fandrich <dan@coneharvesters.com>2010-06-21 12:24:27 -0700
commit8e7ec794f50e41a6e8d86ee4c785a44da02bbfa1 (patch)
tree8ace43b7df729095be805541665931e4e16ae80e /log2changes.pl
parentbd5d478dd4ac3d09c70cf59776e08975a9c75511 (diff)
Make the output of log2changes.pl even more closely match CHANGES
Add the ASCII art header, and list version commits by decoding the ref tag names, when available (using the git log --decorate option).
Diffstat (limited to 'log2changes.pl')
-rwxr-xr-xlog2changes.pl26
1 files changed, 24 insertions, 2 deletions
diff --git a/log2changes.pl b/log2changes.pl
index 53e005790..02ab2cdc9 100755
--- a/log2changes.pl
+++ b/log2changes.pl
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# git log --pretty=fuller --no-color --date=short
+# git log --pretty=fuller --no-color --date=short --decorate
my @mname = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' );
@@ -14,12 +14,30 @@ sub nicedate {
return $date;
}
+print
+' _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+ Changelog
+';
+
my $line;
+my $tag;
while(<STDIN>) {
my $l = $_;
- if($l =~/^commit (.*)/) {
+ if($l =~/^commit ([[:xdigit:]]*) ?(.*)/) {
$co = $1;
+ my $ref = $2;
+ if ($ref =~ /refs\/tags\/curl-(.*)\)/) {
+ $tag = $1;
+ $tag =~ tr/_/./;
+ } else {
+ $tag = '';
+ }
}
elsif($l =~ /^Author: *(.*) +</) {
$a = $1;
@@ -38,6 +56,10 @@ while(<STDIN>) {
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";