Kilka dni temu, robiąc porządki w swoich zakładkach natknąłem się na link do ciekawego  projektu noszącego nazwę Gource . Opisywany program służy do tworzenia wizualizacji zmian jakie zachodzą w repozytorium naszego projektu. Animację wygenerowane przez program prezentują drzewo repozytorium na którym widać jakie piki zostały utworzone/zmienione/usunięte przez wszystkich kolaborantów.  Gource współpracuje z systemami kontroli wersji takimi jak SVN, CVS , Git. Poniżej znajdziecie filmik prezentujący wizualizacje zmian jakie zachodziły w repozytorium jednego z projektów, które współtworzę.

W dalszej części wpisu znajdziecie opis jak wygenerować tego typu wizualizację.

Opis będzie bazował na repozytorium opartym o System kontroli wersji SVN, ale jak wcześniej napisałem można to też zrobić dla repozytoriów przechowywanych w CVS czy Git.

Nie będę tu opisywał jak zainstalować gource bo jest to zalezne od posiadanej przez nas dystybucji, w fedorze można to zrobić poprzez 'yum install gource'. Poza samym Gource będziemy potrzebować skryptu w pythonie który nam przekonwertuje plik z logiem wygenerowanym przez SVN do formatu wykorzystwanego przez Gource.

cd /tmp/
wget http://gource.googlecode.com/files/svn-gource-1.2.tar.gz
tar xvf svn-gource-1.2.tar.gz
cd glowny-katalog-projektu
svn log --verbose --xml > /tmp/moj-projekt.log
cd /tmp/
python svn-gource.py --filter-dirs moj-projekt.log > moj-projekt-gource.log
gource -s 1 -a 1 --log-format custom /tmp/moj-projekt-gource.log   --title "Moj projekt" --bloom-multiplier 0.1 --bloom-intensity 0.1 --background 010E16

Jesli chemy utworzyć film zawieracjący nasza wizualizację potrzebujemy mieć zainstalowany w naszym systemie ffmpeg.

gource -s 1 -a 1 --log-format custom /tmp/moj-projekt-gource.log   --title "Moj projekt" --bloom-multiplier 0.1 --bloom-intensity 0.1 --background 010E16  --stop-at-end --output-ppm-stream - | ffmpeg -y -b 3000K -r 60 -f image2pipe -vcodec ppm -i - -vcodec libx264 -vpre slow  /tmp/moj-projekt.mp4

W razie problemów zachęcam do odwiedzin strony projektu.

Article Global Facebook Twitter Myspace Friendfeed Technorati del.icio.us Digg Google StumbleUpon Eli Pets

Jedna odpowiedź to “Gource – czyli wizaulizacje zmian w repozytorium”

  1. Jacek Says:

    Me Like It :)

Zostaw komentarz

*