Software projects are displayed by Gource 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 . Gource can also parse logs produced by several third party tools for SVN CVS repositories.
view the log of the repository (Git, SVN, Mercurial and Bazaar) in the current path:
For more options and examples see the
Controls wiki page, consult the included README file or man page documentation.
You may also want to check out
Logstalgia, a web server access log visualization tool.
If you like Gource and would like to show your appreciation and encourage future work on this and other open source projects by the author, please consider making a donation!
If you use Gource at work and are interested in getting new features developed or maybe would like to discuss other bespoke visualization work please don't hesitate to
News 30 April 2022
0.53 has been released.
Changes since 0.52:
--high-dpi option. Fixed various bugs with Retina displays on MacOS.
Fixed slider timestamp font not affected by
--font-scale. Fixed hovering over end of slider stopping time advancing.
2 April 2022
0.52 has been released.
Changes since 0.51:
Support rendering at native resolution on Retina / Ultra HD displays.
Support ISO 8601 timestamp format.
Allow custom log and caption file timestamps to be strings.
Change regular expression library to PCRE2.
Fixed filenames not being affected by
--font-scale (Carl Colena). Fixed file key not being affected by
--file-idle-time-at-end option. Added
21 November 2019
0.51 has been released.
Changes since 0.50:
--font-file relative path handling. Fixed a bug in resolving the repository root directory from a relative path.
14 November 2019
0.50 has been released.
Changes since 0.49:
Right mouse button rotation now pivots around the camera.
--font-file option. Added
--enable-font-file option to configure. Added
--no-time-travel option (Lars Schmertmann). Added
--dir-name-position option (Lars Schmertmann). Added
--file-extension-fallback option (Lars Schmertmann). Added
--user-show-filter option (Victor Lopez). Added
--disable-input option (Joey Parrish). Added
--loop-delay-seconds option (Joey Parrish). Added
--font-scale option. Added filename, dirname and user font size options (Carl Colena).
Added workaround for FFMpeg error parsing Gource PPM video output.
Fixed a bug in the Mercurial log parser that caused changes to be missed.
Fixed file removal being cancelled by an action with an earlier timestamp.
Fixed a bug in the log file format detection that could result in the wrong
first entry being displayed for a custom log. Fixed a bug where automatically cycling through a config with multiple
repositories reset settings to their defaults.
Thanks to everyone who contributed to this release.
14 June 2018
0.49 has been released.
Changes since 0.48:
Fixed compatibility with GLM 0.9.9.0.
13 February 2018
0.48 has been released.
Changes since 0.47:
Can now generate logs from git sub module directories.
Fixed building with GLM 0.9.9. UPDATE: this release was partly made to allow building with GLM 0.9.9 (which is in alpha). Unfortunately, on further testing it was discovered that it is unstable with this version due to a change to the library removing default constructors of vectors, resulting in uninitialized values being used. The current release of GLM 0.9.8 should be fine.
8 September 2017
0.47 has been released.
There are a few new command line options around filtering and displaying files, some new display settings and some fixes.
The Windows build is now 64-bit. Also we've enabled STDOUT with the
--output-stream option on Windows so you can pipe Gource directly into ffmpeg like on Linux.
Changes since 0.44:
--screen option. Added
--window-position XxY option. Added
--frameless option. Added
--file-show-filter REGEX option (swoogles). Added
--filename-time and --filename-colour options (gh2k). Improved handling of very low seconds-per-day values (malengrin).
Fixed crash when SVN log lacks author information (obarthel).
Fixed low mouse movement speed with some mice while repositioning camera.
Additional git log command validation (cym13).
Allow lower case hex colours in custom logs (HSorensen).
Enabled STDOUT support with
--output-stream '-' on Windows (circulosmeos). Now requires SDL 2 to build (deprecated SDL 1.2 support removed).
30 July 2016
0.44 is a minor release to fix a build error with newer versions of GCC.
Changes since 0.43:
Fixed crash when taking a screenshot with an odd resolution.
Fixed type deduction compilation error with newer versions of GCC.
16 October 2014
0.43 has been released to fix a minor build issue with Boost on multi-arch Linux systems.
There are no other changes so if you're not affected by this you can stick with 0.42.
Changes since 0.42:
Updated boost autoconf macros to fix multi-arch detection.
23 September 2014
I've been nominated for this years
New Zealand Open Source Awards in the people's choice category. 9 May 2014
fixes some bugs introduced in 0.41 affecting Mercurial, Bazaar support and date range filtering.
Changes since 0.41:
Fixed bzr log command when no start date was specified (chrisf).
Fixed hg log commit order when date range specified.
Fixed hg log command line on Windows.
Fixed parser bug in date range filtering code.
14 April 2014
0.41 has been released.
You can now specify a date range directly with
--start-date and --stop-date (using 'YYYY-MM-DD hh:mm:ss' ISO format).
Gource now uses SDL 2.0 when available, providing much better multi-monitor support.
Changes since 0.40:
Multi-monitor support using SDL 2.0 when available.
SDL 1.2 support is deprecated.
Full screen mode now uses desktop resolution by default.
--start-date, --stop-date 'YYYY-MM-DD hh:mm:ss' options. Added
--dir-name-depth option. Changed
--file-idle-time default value to 0. Changed screenshot format to PNG.
Downloads are now hosted on Github as Google Code no longer accepts adding new downloads:
If you package Gource for a distro, please update the dependencies to use SDL 2 instead of SDL 1.2.