flashcode / gitchart

Build SVG charts from a Git repository.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gitchart

PyPI Build Status CodeQL

Gitchart is a Python script to build charts from a Git repository.

It can build following charts, as SVG or PNG:

  • authors, processed tickets by author (pie charts)
  • commits by hour of day, day, day of week, month of year, year, year/month (bar charts)
  • commits by hour of week (dot chart)
  • files by type (pie chart)

Requirements

Gitchart requires:

  • Python ≥ 3.6
  • Pygal (pip install pygal)

Optional dependencies:

  • cairosvg, to generate PNG files

Install

You can install Gitchart with this command from the source repository:

$ python setup.py install

Usage

See output of command:

$ gitchart --help

Examples

Generate pie chart with authors:

$ gitchart --title "Git authors on project X" --repo /path/to/gitrepo/ authors authors.svg

Generate bar chart with commits by year using dark style:

$ gitchart --style gitchart_dark --repo /path/to/gitrepo/ commits_year commits_year.svg

Generate bar chart with commits by version (git tag):

$ cd /path/to/gitrepo/
$ git tag | gitchart commits_version /tmp/commits_version.svg

Demo

Gitchart is used to build statistics for WeeChat: https://weechat.org/dev/stats/

Copyright

Copyright © 2013-2024 Sébastien Helleu

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

About

Build SVG charts from a Git repository.

License:GNU General Public License v3.0


Languages

Language:Python 96.3%Language:Makefile 3.7%