Re: RFC: GIT networked storage
- From
- Jeff Garzik <jgarzik@pobox.com>
- Date
- Nov 4, 2005, 20:40 UTC
- Message-ID
- <436BC732.3090809@pobox.com>
- In-Reply-To
- <7vd5lg22gm.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano wrote:
Show 23 quoted lines
> Jeff Garzik <jgarzik@pobox.com> writes: > > >>How easy is it to add a new storage backend to git? > > > Almost everything is contained within sha1_file.c. > > Object creation side is simple -- everybody who creates an > object (e.g update-index registering blobs, write-tree writing > the toplevel and intermediate level trees, commit-tree building > a commit object, unpack-objects exploding a pack) goes through > write_sha1_file(), which checks if the object is already > available using has_sha1_file() and creates a new object in the > local .git/objects/?? directory. I am assuming that you are not > planning to create objects in a remote peer from within the git > code path, and instead to have background process that replicate > them over the network to peer repositories, so you probably do > not have to touch this side. > > Extending inspection and reading from existing objects for your > networked storage may be somewhat messy, but starting points > are:
[...]
Thanks. It looks pretty straightforward to add a new storage backend, grepping on the symbols you listed.
Jeff