git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Andrea Righi <righi.andrea@gmail.com>
To: Vegard Nossum <vegard.nossum@gmail.com>
Cc: linux-kernel@vger.kernel.org,
	Jan Engelhardt <jengelh@computergmbh.de>,
	Sverre Rabbelier <alturin@gmail.com>,
	Joe Perches <joe@perches.com>,
	git@vger.kernel.org
Subject: Re: whomto.pl -- finding out whom to send patches to
Date: Fri, 30 May 2008 09:58:19 +0200 (MEST)	[thread overview]
Message-ID: <483FB39A.4070104@gmail.com> (raw)
In-Reply-To: <20080529210018.GA5508@damson.getinternet.no>

Vegard Nossum wrote:
> Hi,
> 
> I've written this perl script that takes a patch as input and prints the
> authors/committers of the affected lines, using git-blame as the back end.
> 
> (The purpose of this is of course to find out whom to send patches to.)
> 
> There are some caveats:
> 
> - If I've understood correctly, git-blame incremental output doesn't split
>   commits when a newer one is found, so we currently possibly take into
>   account more than just the last patch to touch a line. This might not be
>   a disadvantage, however...
> 
> - The patch must apply to the current working tree. I suppose there is
>   some way to use the index information in the patch to determine what to
>   run git-blame against, but this is currently beyond my git knowledge.
> 
> - It's a bit slow, particularly for large files. But doing the same thing
>   by hand would be slower, so I suppose it's an overall improvement.
> 
> Running this on a random -mm patch, for example
> http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.26-rc2/2.6.26-rc2-mm1/broken-out/acpi-fix-fadt-parsing.patch
> gives the following output:
> 
>   $ perl whomto2.pl acpi-fix-fadt-parsing.patch
>   Running git-blame on drivers/acpi/tables/tbfadt.c...
> 
>   To: (Committers)
>       48 Len Brown <len.brown@intel.com>
>   Cc: (Authors)
>       44 Bob Moore <robert.moore@intel.com>
>        2 Alexey Starikovskiy <alexey.y.starikovskiy@linux.intel.com>
>        2 Len Brown <len.brown@intel.com>
> 
> Maybe this tool can be useful? :-)
> 
> (Improvements are of course also welcome.)

Minor fix: do not git-blame /dev/null in patches that add new files.

-Andrea

diff -urpN linux/whomto.orig.pl linux/whomto.pl
--- linux/whomto.orig.pl	2008-05-30 09:43:08.000000000 +0200
+++ linux/whomto.pl	2008-05-30 09:49:26.000000000 +0200
@@ -101,6 +101,7 @@ sub parse_patch {
 
 	for (@p) {
 		if (m/^--- .*?\/([^\s~]*)/) {
+			next if ($1 eq 'dev/null');
 			$file = $files{$1} = {
 				chunks => [],
 			};

  parent reply	other threads:[~2008-05-30  8:11 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-29 21:00 whomto.pl -- finding out whom to send patches to Vegard Nossum
2008-05-29 18:20 ` Joe Perches
2008-05-29 22:19 ` Jesper Juhl
2008-05-29 23:33 ` Junio C Hamano
2008-05-31 10:33   ` Vegard Nossum
2008-05-30  7:58 ` Andrea Righi [this message]
2008-05-31 10:03   ` Vegard Nossum
2008-05-30  9:29 ` Roel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=483FB39A.4070104@gmail.com \
    --to=righi.andrea@gmail.com \
    --cc=alturin@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jengelh@computergmbh.de \
    --cc=joe@perches.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vegard.nossum@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).