#!/bin/sh git log --pretty=%b%x00 "$@" | perl -n0 -wMstrict -E ' for (reverse split /\n\n/) { my @headers = grep m{ ^ (?: [a-z]+ (?: (?:-\w+)+ | \ by ) ) : \s* \S }imx, split /\n/ or next; say for @headers; last; } '