Generer la video d’un depot SVN avec Gource
Snapshot du dépôt de VLC
La plupart des projets de grande ampleur, menés par plusieurs développeurs, utilisent des SCM (Source Code Manager).
Je vous propose aujourd'hui un moyen de visualiser l'effort accompli sur un projet d'une manière assez peu traditionnelle, c'est à dire en utilisant la vidéo, avec Gource.
Ces gestionnaires de code source stockent toutes les actions sur les fichiers sources (création, édition, correction) ainsi que sur l'architecture des projets (déplacements, création de répertoires, ...).
Gource, le logiciel suscité, va se servir de ces informations pour créer une animation retraçant la vie du projet. Les SCM actuellement supportés sont :
- Git : http://fr.wikipedia.org/wiki/Git
- Mercurial : http://fr.wikipedia.org/wiki/Mercurial
- Bazaar : http://fr.wikipedia.org/wiki/Bazaar_(logiciel)
Et avec un peu de bonne volonté (et la doc sur le wiki de Gource) :
L'installation du logiciel peut être faite indifféremment sous Windows ou sous Linux (bien que les binaires de Windows sont apparemment plus à jour).
SVN nécéssite une petite manipulation supplémentaire, qui est la mise au "bon" format de ses fichiers de log. On peut le faire avec une de ces méthodes.
gource --log-format custom projet/gource.log
Permet de visualiser la vidéo, avec de nombreuses options paramétrables.
gource --log-format custom --stop-at-end -s 0.05 --hide filenames,dirnames --date-format "%d/%m/%Y" -1280x720 projet/gource.log --disable-progress --output-ppm-stream - | ffmpeg -y -b 3000K -r 30 -f image2pipe -vcodec ppm -i - -vcodec flv sortie/video-gource.flv
Permet de l'exporter dans un format prêt à être porté sur YouTube, telle que cette vidéo qui résume la vie de notre projet PI du second semestre à l'INSA :
C'est moi le petit bonhomme bleu
A noter, la résolution que l'on choisit de mettre permet de le voir en HD 720p sur Youtube, ce qui fait tout son charme.
Par contre, attention au temps de génération du fichier, ainsi qu'a la taille des données générées si vous ne les faites pas passer par ffmpeg.