Skip to content

Comment on Personal Git Commit Statistics

Comments

Maybe I'm missing something about the desired data, but why not just do something like:

    git shortlog -s | grep "My Name"
This shows how many commits you've made on a repo. Omit the grep to see everyone's counts.

That's a perfectly fine solution, but not exactly what I want. With this solution I would have to keep a list of repositories up to date. And in order to update my data I would always need to clone every repository, run the command and put all numbers together.

I like automation, so I looked for a different solution.

Fair enough. I wouldn't consider having a clone of the repo to be a blocker. You could very easily automate the cloning, reporting, deleting of a repo.

That's true. A big advantage of this solution over, let's say a self written post-commit hook, is the past. It doesn't matter when you start collecting this data, thanks to Git you will have data about yourself from the past. With a post-commit hook that's not the case.

I'm still not sure what's the best way to go, but thanks for your comments!

But then it's just a list of dates and its hard to see any patterns - that was my motivation ... I wanted graphs, iCal data you can put on a calendar and so on.

A list of dates?

Using my command I showed above I get the following output:

      2791	Ryan Funduk
Still, yea, if you want data you could put on a calendar then I would instead suggest `git log` with `pretty-format` which you could then parse pretty easily.

Docs: http://www.kernel.org/pub/software/scm/git/docs/git-log.html

Eg, here's a command that will output a csv with the commit sha, message, unix timestamp and committer name:

    git log --pretty=format:'"%h", "%s", "%at", "%an"' | grep "Your Name"

Ahh, sorry, I wasn't familiar with the shortlog command.

I still want to be able to pick out patterns in the data tho. Getting the data out is only half the battle, then you have to be able to pick out something interesting in it.

If you see my other comment here, I already wrote some scripts that pulled timestamps into iCal files and graphs.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.