From: Linus Torvalds Date: Thu, 15 Sep 2005 19:54:54 GMT Subject: RE: getting a list of changes I commited Message-ID: In-Reply-To: On Thu, 15 Sep 2005, Luck, Tony wrote: > > I can add the "^linus", but I think that with my workflow it > will never make a difference. Any commits that got into your > tree with a committer line by me will already be in my "oldhead" > (how else did you get them?). So "^oldhead ^linus" should always > be identical to "^oldhead". No. "oldhead" has to be the point where you did the last email thing. So any time you merge from me, next time your email cron-job (or whatever) hits, ^linus _will_ make a difference. Without it, you'd email out all the stuff that came through my tree. > Great ... I suspected that everything I needed was already there > (after all, all GIT problems are solvable with the right arguments to > git-rev-list!) Good man. > But "git-shortlog" doesn't like the output from this, so I need > a script (or another tip on arguments to git commands). Ehh. This is getting ugly, but hey, that's my middle name. git-rev-list --header newhead ^oldhead | grep -z "committer .*tony\.luck" | tr '\0' '\n' | git-shortlog and btw, this depends on "git-shortlog" also understanding non-pretty log messages, with a patch like below. Junio? Linus "ugly" Torvalds --- Subject: Teach git-shortlog about raw log format too This teaches "git-shortlog" to understand the non-prettified author format too, so you can use it with "--pretty=raw" or "--header" output too. Signed-off-by: Linus Torvalds --- diff --git a/git-shortlog.perl b/git-shortlog.perl --- a/git-shortlog.perl +++ b/git-shortlog.perl @@ -108,7 +108,7 @@ sub changelog_input { if ($pstate == 1) { my ($email); - next unless /^Author: (.*)<(.*)>.*$/; + next unless /^Author: (.*)<(.*)>.*$/ || /^author (.*)<(.*)>.*$/; $n_records++;