Grack
Archived Ruby 2009
Git's Smart HTTP server protocol as a Rack app, so any Ruby web server could host Git repositories.
Git ships a Smart HTTP backend called git-http-backend, but it only runs as a
CGI script and is really only targeted at Apache 2.x — it expects PATH_INFO to
be set and formatted a particular way.
Grack reimplements that handler as a Rack application. Once the protocol lives in Rack, any Ruby web server can serve Git over HTTP: Unicorn, Thin, Passenger, WEBrick, whatever you already run.
I wrote about how the Smart HTTP protocol actually works in Smart HTTP Transport.
The gem is now developed at grackorg/grack; my repository isn’t updated any more.