From: Jeff King <peff@peff.net>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>,
Shawn Pearce <spearce@spearce.org>,
git@vger.kernel.org,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: git as an sfc member project
Date: Sat, 23 Oct 2010 09:39:48 -0400 [thread overview]
Message-ID: <20101023133948.GA2002@sigill.intra.peff.net> (raw)
In-Reply-To: <AANLkTikxMtdvppLur4kuXffRn0G29NFv6ameTpaeY46G@mail.gmail.com>
On Sat, Oct 23, 2010 at 11:52:26AM +0000, Ævar Arnfjörð Bjarmason wrote:
> Either way it doesn't matter, since I'm not interested in being a SFC
> liasion. I just want to hack, not deal with issues like these (but
> more power to people who want to).
I didn't mean to pick on you, btw. It's just that I was surprised to see
you, whose first commit was only 6 months ago, in the list of top
contributors by lines of code. You're productive, but not _that_
productive. :)
As it turns out, even though Junio's numbers are doubled, you are in
fact high by line count. It's because of compat/regex:
$ git log --pretty=format: --numstat --author=Bjarmason compat/regex/* |
perl -ne '/^\d+/ and $total += $&; END { print "$total\n"; }'
11186
which accounts for 85% of your contribution. :)
> But I think picking people for anything based on the number of lines
> that git-blame thinks people "own" is a bad criteria. My contributions
> to Git are relatively small, but I've happened to pick projects (the
> test suit, gettext) that have touched a lot of lines of code.
>
> But other people who've done 10x more work than I have (both in time &
> importance) probably have 10x less lines of code assigned to them.
I think counting surviving lines via git-blame is not that bad a metric
for importance. It's certainly better than counting added lines (as I
did above), as it measures lines that people are actually still using.
The problem here is that we have quite large chunks of "uninteresting".
Junio made some attempt to account for this by counting various parts of
the codebase separately. Probably compat/ should have been removed from
the core count (ditto for Marius Storm-Olsen, whose line count is
inflated by importing nedmalloc; which isn't to say that any of these
contributions aren't important. They just aren't the same as sitting
down and writing 10,000 lines of custom git code).
In general, any line count of code (surviving or otherwise) will favor
people who are adding features rather than fixing bugs. I prefer commit
count, where I personally fare much better. :)
One interesting metric to me is the ratio of commit log lines to code
lines. A high ratio implies (to some degree) working on bugfixes, where
the actual changed lines of code are less important than the time you
spend figuring out _which_ lines to change.
You can measure it with something like:
$ git log --format='Author: %an%n%w(0,4,4)%B' --numstat --no-merges |
perl -ne '
if (/^Author: (.*)/) { $author = $1 }
elsif (/^\s{4}.+/) { $commit{$author}++ }
elsif (/^\d+/) { $code{$author} += $& }
END {
print($commit{$_} / $code{$_}, " $_\n")
for grep { $code{$_} } keys(%code)
}
' | sort -rn
Of course it has its own set of flaws. One giant feature contribution
can outweight a lot of bugfixes in the average.
-Peff
next prev parent reply other threads:[~2010-10-23 13:52 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-22 18:30 git as an sfc member project Jeff King
2010-10-22 19:19 ` Shawn Pearce
2010-10-22 19:35 ` Jeff King
2010-10-22 20:06 ` Shawn Pearce
2010-10-22 20:59 ` Sverre Rabbelier
2010-10-22 21:48 ` Junio C Hamano
2010-10-22 22:59 ` Junio C Hamano
2010-10-22 23:18 ` Jeff King
2010-10-22 23:21 ` Brandon Casey
2010-10-22 23:26 ` Junio C Hamano
[not found] ` <hh0bQq8TcM0saDTuJo6qVdOMgn-14aysvhF_S70syB678Of7zQOsY9jLajG2WpeGXid8jtG4kVA@cipher.nrlssc.navy.mil>
2010-10-23 0:09 ` Brandon Casey
2010-10-23 1:30 ` Brandon Casey
2010-10-23 22:48 ` Brandon Casey
2010-10-22 23:22 ` Junio C Hamano
2010-10-23 11:52 ` Ævar Arnfjörð Bjarmason
2010-10-23 13:39 ` Jeff King [this message]
2010-10-23 16:03 ` A Large Angry SCM
2010-10-26 22:39 ` Jeff King
2010-10-27 7:03 ` Tait
2010-10-27 11:08 ` Jeff King
2010-11-02 23:03 ` Bradley M. Kuhn
-- strict thread matches above, loose matches on Subject: below --
2010-02-24 15:44 Jeff King
2010-02-24 16:07 ` Jakub Narebski
2010-02-26 12:39 ` Jeff King
2010-02-26 15:56 ` Jakub Narebski
2010-03-01 10:58 ` Jeff King
2010-02-24 16:22 ` Shawn O. Pearce
2010-02-26 12:49 ` Jeff King
2010-02-24 17:44 ` Christian Couder
2010-02-26 12:25 ` Jeff King
2010-02-24 18:12 ` Junio C Hamano
2010-02-26 12:29 ` Jeff King
2010-02-26 12:37 ` Jeff King
2010-02-26 12:59 ` Jeff King
2010-02-26 13:14 ` Julian Phillips
2010-03-01 10:53 ` Jeff King
2010-02-27 6:35 ` Eric Wong
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101023133948.GA2002@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=spearce@spearce.org \
--cc=torvalds@linux-foundation.org \
/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.
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 NNTP newsgroup(s).