How can I see who's committed or contributed the most to a repository in Stash?

In a larger software team, it's often the case that there are many pieces of software and a small number of people that are "experts" on each one. Sometimes finding out who those people are isn't that easy.

Is there a way to use Stash to figure out which developers have been making the most significant changes to a git code base?

4 answers

1 accepted

"Who's the Expert?"

... is a plugin for Stash that helps with this problem. It analyses the commits to a repository and shows a list of "Recent Experts" (who've made the biggest contribution of the past 8 weeks) and "Veteran Experts" (those contributing most over the last 2.5 years).

You can read a bit more about the plugin here:

   http://www.belmonttechnology.com.au/atlassian-plugins/whos-the-expert-stash-plugin/

You can install it and try it for free today from the Atlassian Marketplace:

   https://marketplace.atlassian.com/plugins/au.com.belmonttechnology.whos-the-expert-git-stash-plugin

The current version of the plugin supports Stash 3.x.

You can get a version that works for Stash 2.4 - 2.12 by clicking 'More Versions' on the marketplace.

I used once such a plugin, not sure if the same. It was free at the time. But it was far too CPU intensive, and was not keeping up with the large repositories we have. So, be warned :)

Thanks for your comment, Mike. Performance and resource utilisation were definitely something that was taken into consideration when implementing the plugin. When analysing the code base, the plugin make use of some clever threading for both I/O and computation, with buffering in-between. Running the plugin over 2.5 years of commits on the main Spring Framework repository on my 2014 MacBook Pro takes 6 seconds. Running it over the Linux kernel takes 19 seconds to get the 8 week history prepared and 94 seconds for the whole 2.5 years. Remember this is not just looking at the commit log, but actually analysing the source code changes in each commit, so I feel that’s a decent response time for such an extreme case. The plugin page uses AJAX, so the user experience is quite nice even when the data takes a while to analyse, but it should execute in seconds on most typical enterprise codebases assuming you're not running it recycled hardware from 2004. :) With regards to resource utilisation, the plugin caches all results it generates for up to 24 hours so that multiple requests for the same project don’t result in the CPU being hammered all the time. The cache is memory-sensitive, so the cached results may be dumped if Stash needs that memory for something more important. I hope that helps to alleviate people's concerns. If anyone finds the performance sucks, I'd be interested to have a look at the use case. Cheers, Graham.

We have a history of about 8 years in a 3GB repository.

A few of those actually, one of it produces up to 1GB source code diffs a month - heavily developed.

Well, I'd be interested to find out how you go if you want to give it a try. :)

This question seems to have been asked and answered for the sole purpose of promoting the asker's own plugin

Hi Tim. You are correct. Atlassian recommend doing this in their documentation: "You should also announce the release of your plugin on Atlassian Answers..." https://developer.atlassian.com/docs/common-coding-tasks/development-cycle/packaging-and-releasing-your-plugin#PackagingandReleasingyourPlugin-6.AnnounceyourPlugin

But you should "announce" and not "ask a fake question". Make it more clear next time, because i thought someone really was asking seriously.

Suggest an answer

Log in or Join to answer
Community showcase
Piotr Plewa
Published Dec 27, 2017 in Bitbucket

Recipe: Deploying AWS Lambda functions with Bitbucket Pipelines

Bitbucket Pipelines helps me manage and automate a number of serverless deployments to AWS Lambda and this is how I do it. I'm building Node.js Lambda functions using node-lambda&nbsp...

675 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot