public
Description: The Erlang git-daemon
Homepage:
Clone URL: git://github.com/mojombo/egitd.git
mojombo (author)
Wed Apr 29 16:26:46 -0700 2009
commit  3ba1ad040b5134a7f6dc6b058ba8bef497f12ea4
tree    459c43ce6721f6bf8e5ab6fa05956545d35ee338
parent  d6cbdc333086c0c4bcdaf45b812126f9f94d912a
egitd /
name age message
file .gitignore Mon Jul 07 20:31:55 -0700 2008 write pid file if requested [mojombo]
file README Wed Apr 29 16:29:53 -0700 2009 add development status to readme [mojombo]
file Rakefile Sun Jul 06 10:32:58 -0700 2008 remove cruft from Rakefile [mojombo]
directory bin/ Sat Oct 18 12:01:04 -0700 2008 use a more naive streaming approach. ignorance ... [mojombo]
directory docs/ Thu Jul 03 00:19:51 -0700 2008 allow non-initial fetch-packs to work [mojombo]
directory ebin/ Tue Jun 03 22:59:08 -0700 2008 rename to egitd [mojombo]
file egitd.conf Sat Oct 18 12:01:04 -0700 2008 use a more naive streaming approach. ignorance ... [mojombo]
directory elibs/ Sat Oct 18 12:01:04 -0700 2008 use a more naive streaming approach. ignorance ... [mojombo]
README
egitd
  by Tom Preston-Werner <tom@github.com>

egitd is an Erlang git-daemon implementation that provides a more flexible,
scalable, and loggable way to serve public git repositories.

Development Status: Experimental

This software was in production use at github.com for a short time until it
became obvious that the communications model was flawed. To be specific,
if the upload-pack takes a long time to respond (for big repos), either the
timeouts have to be increased to unreasonable values (slowing the entire
transfer down), or some connections will timeout and fail.


INSTALL
-------

$ git clone git@github.com:mojombo/egitd.git
$ cd egitd
$ rake


RUN
---

$ bin/egitd -c <path to conf file> -l <path to log file>


CONF FILE
---------

The config file specifies the mapping between specified repo name and file location.

github.com        (.+)/(.+)       "/data/git/repositories/" ++ Match1 ++ "/" ++ Match2.