Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
83 lines (56 sloc) 3.71 KB


lolcommits (git + webcam = lol)

Takes a snapshot with your Mac's built-in iSight/FaceTime webcam (or any working webcam on Linux) every time you git commit code, and archives a lolcat style image with it.

By default, the lolimages are stored by a Github style short SHA in a ~/.lolcommits directory created for you.

Build Status Dependency Status

Installation (Mac OS X)

You'll need ImageMagick installed. Homebrew makes this easy. Simply do:

brew install imagemagick

Then simply do:

[sudo] gem install lolcommits

(If you're using rvm or something like that, you can/should probably omit the sudo, but the default MacOSX Ruby install is dumb and requires it.)

You're all set! To enable lolcommits for a git repo, go to the base directory of the repository, and run:

lolcommits --enable

Likewise, you can disable it via lolcommits --disable. For a full list of options, you can do lolcommits --help.

Installation (Linux)

Install dependencies using your package manager of choice, for example in Ubuntu:

sudo apt-get install mplayer imagemagick libmagickwand-dev

Then install the lolcommits gem:

gem install lolcommits

Then you can lolcommits --enable in any git repo as above.

For more details, see Installing on Linux.

Installation (Windows)

See the wiki page for Installing on Windows.

Sample images


Please add your own lolcommit! Add to the People Using Lolcommits page on the Wiki.


lolcommits has some options for additional lulz. You can enable via environment variables.

  • Set webcam device on mac - set LOLCOMMITS_DEVICE environment variable.
  • Set delay persistently (for slow to warmup webcams) - set LOLCOMMITS_DELAY var to time in seconds.


  • TRANZLATE YOAR COMMIT_MSG TO LOLSPEKK - do lolcommits --config -p tranzlate and set enabled to true.


Started a FAQ.

Something went wrong with that request. Please try again.