Re: gitweb filter for patches by a specific person in a specific timeframe
From: Jeff King <hidden>
Date: 2016-06-15 22:42:38
On Mon, Aug 28, 2006 at 02:59:21PM +0200, Kai Blin wrote:
I have just completed my Google Summer of Code[1] project[2] working for the Wine project. Now, as I was submitting patches to a git repository, I don't have a branch solely containing my patches or something like that. Google seems to want something like this, so I figured maybe I could get gitweb to filter for my patches during the SoC period. Is that possible? If not, does it sound like something feasible to add?
You can create an mbox of all of the changes you made. Unfortunately
git-rev-list doesn't do author/committer matching, so you'll need a
short perl script:
-- >8 --
$ cat >match-who.pl <<'EOF'
#!/usr/bin/perl
my $name = shift;
my $match = qr/$name/i;
my $commit;
while(<>) {
chomp;
next unless $_;
next if /^\s/;
my ($k, $v) = split / /, $_, 2;
if($k eq 'commit') {
$commit = $v;
}
if($commit && ($k eq 'author' || $k eq 'committer') && $v =~ $match) {
print "$commit\n";
$commit = undef;
}
}
-- >8 --
Then you should be able to do:
$ git-rev-list --pretty=raw master |
perl match-who.pl kai.blin@gmail.com |
git-diff-tree -p --stdin --pretty=email \
> my-patches
You can either look through that, or you can try applying the patches
with git-am (though if your patches depend on changes not by you that
happened in the intervening time, you'll probably have some rejects).
-Peff