I’ve been playing around with Git, CIA.vc, and Lighthouse on a project of mine that’s recently been resurrected.
There is a pretty good update hook for CIA.vc integration called ciabot.pl that I’ve been using, without any complaints. Unfortunately, I haven’t been able to find anything to integrate Git with Lighthouse that hasn’t needed modification out of the box.
I tried the (pre|post)-receive hooks provided at Obvious Code, but it had a few issues. It would use the author/committer information of the first rev it saw, and use that for every revision it handled. Lighthouse couldn’t understand the “changed-at” time format it was using. The hook also relied on writing out a file with the last rev it saw, so it knew where to pick up, which I didn’t really like.
So, I decided to write my own in Perl. The latest version is available via Git on GitHub.
The script can either be called straight from an existing update hook, or can be the update hook. It will split out commits on its own given the old and new SHA1.