Mostrando postagens com marcador gource. Mostrar todas as postagens
Mostrando postagens com marcador gource. Mostrar todas as postagens

sábado, 21 de julho de 2012

Gource video of FxGqlC 2.2

I refreshed the Gource video of FxGqlC to reflect the latest version:





This time, the video was created on Ubuntu, and it is even simpler then on Windows.  These are the commands that I've run in a terminal window:

  • sudo apt-get install gource
  • sudo apt-get install ffmpeg
  • cd ~/Projects/FxGqlC
    (the GIT-directory where the FxGqlC source code is located)
  • gource -s 0.25 -title 'FxGqlC' -i 1000 -o /tmp/fxgqlc-gource.ppm
    (-s 0.25 to speed up to 4 days per second, -i 1000 to prevent fading out of idle items)
  • avconv -y -r 25 -f image2pipe -vcodec ppm -i /tmp/fxgqlc-gource.ppm -vcodec wmv1 -r 25 -same_quant /tmp/fxgqlc-gource.wmv
  • upload the video /tmp/fxgqlc-gource.wmv to youtube
Initially, I used ffmpeg as on Windows which worked without problems, but I got this warning:
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.

Migrating to "avconv" was no problem, since the exact same parameters could be used with it, except for the parameter -sameq which is replaced by -same_quant.

domingo, 13 de maio de 2012

Using multiple subversion trees with Gource

This is a follow up on my previous post on Gource last week.

Gource supports Subversion out of the box. Just start Gource.exe from a Subversion controlled directory, and Gource will download the change logs automatically, convert them to the internal Gource format, and show the visualization.

In some situations, it can be useful to do these steps manually. For example, when you want to show the visualization based on multiple source trees.
This can be done by following these steps:
  • Download the change logs from your version control system.  
    • The command to do this can be obtained from Gource by executing, from the directory:
      gource.exe --log-command svn
      This gives this output:
      svn log -r 1:HEAD --xml --verbose --quiet
    • Run this command, and store the output in a file:
      svn log -r 1:HEAD --xml --verbose --quiet > c:\temp\log-source-1.txt
    • Repeat this for the other source trees that you want to visualize
  • Convert the Subversion change log files to the Gource format. This can be done in one step using a Powershell command:
    Get-ChildItem  log-source-*.txt | foreach { .\Gource\gource.exe --log-format svn --output-custom-log "$_-gource.txt" "$_" }
    (or using a similar command using e.g. bash).
    This creates the files "log-source-*.txt-gource.txt"
  • Merge the Gource log files into one big file, and order on the timestamp.  For this, I used FxGqlC:
    select * into [log-source-merged.txt] from [log-source-*.txt-gource.txt] order by matchregex(*, '^(\d+)|')
  • Now you can run Gource on the merged changelog file:
    .\Gource\gource.exe log-source-merged.txt
The procedure above can easily be changed for any version control system, like GIT or Mercurial. Even the ones which Gource doesn't support, like Microsoft Visual Studio Team Foundation Server. In that case, you can transform the TFS changeset history into the Gource internal format using a Powershell or FxGqlC script.

quarta-feira, 9 de maio de 2012

Graphically visualize software development with Gource

Gource is a very cool open source visualization tool to get a graphical view on the check-ins of source code in a version control system like GIT, SubVersion, CVS, ...

http://code.google.com/p/gource/

This is a video of the development of FxGqlC 2.x, generated with Gource:



It is very easy to generate a video like this based on your source control system. In the explanation below I used Windows, but all the tools were originally developed for Unix.

  • Local snapshot of the source code
    (You can skip this step if you already have a local copy of a source controlled project in GIT, SubVersion,...)
    I started from a local snapshot of the last version of the source code. The FxGqlC source code is hosted on GitHub, a public GIT version control repository. 
      • You first need to install the client of the version control system. In this case: the GIT client the GIT client for Windows.
        http://git-scm.com/downloads
      • Install to the default location "c:\Program Files" (or "c:\program files (x86)" on 64-bit Windows) 
      • Open the GIT-console (bash) from the start menu, and execute these commands to get a local copy of the source code:
        $ mkdir ~/Documents/FxGqlC-Source
        $ cd ~/Documents/FxGqlC-Source
        $ git clone https://github.com/WimObiwan/FxGqlC.git
    • Set up Gource and run Gource
      • Download gource from http://code.google.com/p/gource/ (I used the Windows build of version 0.38, posted on 2012-04-23)
      • Unzip to c:\temp\gource
      • Open a command prompt to start Gource:
        cd %userprofile%\Documents\FxGqlC-Source\FxGqlC
        SET PATH=%PATH%;c:\program files\git\bin
        On 64-bit Windows, use instead:
        SET PATH=%PATH%;c:\program files (x86)\git\bin
        c:\temp\gource\gource.exe
      • Gource gets the necessary information from the GIT-server, and the video is played.
    • To generate the video in WMV format:
      • First generate the video in PPM format with this command:
        .\Gource\gource.exe -o fxgqlc-gource.ppm
      • Download ffmpeg: http://www.videohelp.com/tools/ffmpeg
      • Unzip to c:\temp
      • Cd c:\temp
      • ffmpeg.exe -y -r 25 -f image2pipe -vcodec ppm -i fxgqlc-gource.ppm -vcodec wmv1 -r 25 -sameq fxgqlc-gource.wmv
      • The video fxgqlc-gource.wmv can be played with a media player or uploaded to YouTube.
    • On YouTube, you find several Gource videos of big open-source projects:

    Update: have a look at "http://mycomputeradventures.blogspot.be/2012/07/gource-video-of-fxgqlc-22.html" on how to create a gource video on Ubuntu.