Welcome to bytebang » The blog about all and nothing » SCM progress visualization with gource

SCM progress visualization with gource

May 03 2017

The Problem

I wanted to document the progress throughout a software development project in a more compelling way than just by printed out commit logs. I was searching for something 'cool' and also something that shows how much effort and manpower really goes into a piece of software. Something that is also easy to understand by the management.

The Solution

After a few hours of googling I discovered gource which is able to display software projects as an animated tree with the root directory of the project at its centre. Directories appear as branches with files as leaves. Developers can be seen working on the tree at the times they contributed to the project.

Gource includes built-in log generation support for Git, Mercurial, Bazaar and SVN. Gource can also parse logs produced by several third party tools for CVS repositories.

The videos look like this:

... and (if you have installed the right packages) they can be created with a single command which is started from within your project directory:

gource -1280x720  -e 0.1 --bloom-intensity 0.1 -o - | ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i - -vcodec libvpx -b 10000K myCoolVideo.webm

The first part is the actual call of gource. If you call it without parameters, then it will show you the progress within a window - but it does not create a video.

The parameters of gource are tellint it that it should produce a video with the size of 1280x720 pixels and beside some other things the parameter -o - tells the program that it should output the result at the standard output stream.

From there on ffmpeg takes over and produces a rather small webm video which is a good compromise between quality and filesize. The final video (myCoolVideo.webm) is the placed on the current directory where gource was originally started from.

You can abort the video creation at every moment by pressing CTRL+C at the console where gource was started from

Get Social

(c) 2023, by bytebang e.U. - Impressum - Datenschutz / Nutzungsbedingungen