GitShot

Hacker sa webcam et jouer avec git c’est swag

GitShot — timelapse vidéo de chaque commit

Ceux qui me connaissent savent que j’adore tracker un tas de trucs dans ma vie. J’utilise evernote pour mes recettes de cuisine & mes sides projects, Foursquare pour les km parcourus, codeivate pour mes heures de code.

Ajourd’hui je vous propose quelque chose de bien plus fun : prendre une photo avec votre webcam à chaque commit !

J’ai testé ce hack seulement sur macOS. Si quelqu’un a essayé sur Linux je veux bien un tweet à ce sujet.

Hacker votre webcam

ImageSnap est un logiciel en ligne de commande qui permet de capturer une image depuis votre webcam. Sur macOS vous pourvez l’installer via brew :

  $ brew install imagesnap

Une fois téléchargé, vous pouvez utiliser la commande imagesnap pour capturer une image.

Gitshot CLI

Ajouter un Git Hook

Créez 2 dossiers .gitshots et .git-templates dans votre dossier utilisateur.

  $ mkdir ~/.gitshots ~/.git-templates

Ajoutez ces 2 lignes dans votre fichier .gitconfig

  [init]
    templatedir = ~/.git-templates

Vous devez maintenant créer votre fichier de hook.

  $ vim .git-templates/hooks/post-commit

Collez-y les lignes suivantes :

  #!/usr/bin/env ruby
  file="~/.gitshots/#{Time.now.to_i}.jpg"
  puts "Taking capture into #{file}!"
  system "imagesnap -q -w 3 #{file}"
  exit 0

Pour que votre Hook s’applique à vos anciens projets, n’oubliez pas de faire un git init.

Timelapse vidéo

tlassemble est un utilitaire qui permet de mettre des images les une à la suite des autres pour réaliser une vidéo.

  $ brew install tlassemble

Pour créer notre timelapse video vous devez spécifier le dossier d’origine et le fichier de sortie.

  $ tlassemble .gitshots time_lapse.mov

Et voila !

Abonnez-vous à ma newsletter pour voir le timelapse des 1 an de commit. En tant que consultant front-end je suis curieux de voir en image les différents endroits d’où je travaille.

GitShot — timelapse vidéo de chaque commit