git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Effectively tracing project contributions with git

From
JWJoseph Wakeling <joseph.wakeling@webdrake.net>
Date
Sep 13, 2009, 00:03 UTC
Message-ID
<4AAC36D5.1040901@webdrake.net>
In-Reply-To
<20090912185940.GA21277@coredump.intra.peff.net>
Jeff King wrote:
> We can probably help you with the git side of things, but defining "who
> contributed what" is kind of a hairy problem. You will need to define
> exactly how you want to count contributions.

Yes, that's pretty much what I'm looking for. My thoughts on contribution run along much the same lines as yours -- there's a need to distinguish between meaningful additions and mere tweaks.

My general rule is that stuff like whitespace changes, changing the name of variables, typo corrections etc. is not a meaningful contribution although if someone had really done a lot of it I might see things differently. Substantial additions -- extending the code, comments or documentation -- are what I'm after. Ultimately this has to be decided by me actually looking at things rather than metrics.

What I'm doing right now is to run a git shortlog on a file to get a rough idea of the contributors and who are likely to be the main authors, then using gitk to browse the commits for that file. It's time-consuming but works -- once I've identified at least one major commit from someone I can ignore everything else by them and concentrate on the remaining contributors.

What would help is some way to speed up the process of getting someone's commits: 'give me all the diffs for file X by author Y'. I'm not too good at shell scripting so grep-y things don't spring easily to mind.

An alternative useful tool would be 'give me all the commits to this file that change more than N lines'.

With those two -- particularly the first -- I think I'd be able to get a fair way. It won't work for the files where there has been a lot of moving of content or renames, but that's mostly in the docs -- the code, which is the really important thing, doesn't seem so bad (so far).

Thanks very much for the advice and careful thoughts,
Best wishes,
    -- Joe
Previous: Joseph Wakeling
Message 8 of 8 in “Effectively tracing project contributions with git”
  1. Joseph WakelingSep 12, 2009
  2. Jeff KingSep 12, 2009
  3. Sverre RabbelierSep 12, 2009
  4. Joseph WakelingSep 13, 2009
  5. Theodore TsoSep 13, 2009
  6. Jeff KingSep 13, 2009
  7. Joseph WakelingSep 13, 2009
  8. Joseph WakelingSep 13, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.