DEV Community

Joe Zack for Coding Blocks

Posted on • Originally published at

Analyzing Git History with Elasticsearch

Importing Git History into Elasticsearch is not very much fun thanks to the lack of git formatting options, but it's pretty cool once you get it working!

The commits that I imported has 22 data points, including a one-to-many list of changed files. I imported the git history from to see how things looked.

Now I can run simple queries like this to see things like how many commits were made by each contributor:

Query for Commits by Author in Kibana Dev Tools

That's nice and all, but I'd prefer something visual so I put together a simple dashboard in Kibana.

This is a screenshot of the charts I put together. I can apply filters and searches at the top of the dashboard and it will affect all the charts.

Unfiltered dashboard

I can (for example) look at commits by Ben Halpern in the last 90 days that involve "Algolia".

Check out the video to see a bit more about the visualizations:

Pretty cool right?


Eventually I'd like to take some time to clean-up the import process so it's easier to run, but for now I'm going to take some time exploring a couple of my own projects to see if I can dig anything interesting up.

Top comments (4)

biros profile image
Boris Jamot ✊ /

Pretty nice job. Your video is also awesome.

I guess the goal of this article is more about elasticsearch and kibana than about's git history, because github already has this kind of feature about git's statistics, right?

thejoezack profile image
Joe Zack

Yeah, I was just having some fun :)

stephencweiss profile image
Stephen Charles Weiss

Hey Joe -

Just FYI the image links seem to be dead.

thejoezack profile image
Joe Zack

Ack! Thanks, I changed domain names :)

I'll get it fixed up