Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.

Drupal drupal contribution analyzer

This set of scripts tries to get statistics from the drupal project commit history. It also tries to get as much as possible attribution in commit messages as possible.



  • git

  • make

  • python

  • python-git


  • codeswarm and mencoder (to generate the videos)

  • processing and wordookie (to generate tag clouds)

  • asciidoc (to generate the compiled documentation)

How to use this

First, you need to get a drupal git repo from drupalfr git:// and configure accordingly the file.

Tag cloud

To generate a tag cloud of file activity, using you need to:

  1. Generate the log file:

    # for measuring activity by the number of changed files
    make filelog-count
    # for measuring activity by the number of commits
    make commitlog-count
  2. Build the tag cloud you want(see data/stats/ directory), either using worlde or processing with wordookie:

    1. Wordle

      • Go to

      • Paste the contents of the file in the first box.

      • Make it pretty with the applet options.

        You can get a PDF of the tag cloud and then import it from inkscape to generate the image size you need ;-)
    2. Processing with wordookie

      • Install

      • Install

      • Open wordookie/TagCloud/TagCloud.pde sketch and export it as application.

      • Run it passing the file you want:

        # this is a really time consuming operation
        make data/tagclouds/name-of-stat.txt.tif
        Please notice that on *nix you need to modify the output script to be able to pass parameters. Just add $@ at the end of the executed command in the script.


To get a codeswarm video of drupal history your need to:

  1. Generate the xml files for codeswarm:

    make mainlogs
  2. Get codeswarm:

  3. Build code_swarm with ant.

  4. Copy the xml file you just generated to the data/ directory in the root of code_swarm.

    make mainlogs actually generate two xml files, so please repeat this process if you want a video for Drupal 7 development and another one for the full history of Drupal development.
  5. Copy drupal.config to the root of code_swarm.

  6. Make sure the InputFile variable in drupal.config have the right value set(the xml file you just generated) and create the directory frames in the root of codeswarm.

  7. Generate the frames for the video

    cd path/to/code_swarm
    ./ drupal.config
  8. Copy to the frames/ directory of code_swarm

  9. Make the video

    cd frames/
    ./ drupal7-git-logs.flv


No releases published


No packages published