Thread (2 messages) flat view 2 messages, 2 authors, 2016-06-15

Re: RFC: GIT networked storage

From: Jeff Garzik <hidden>
Date: 2016-06-15 22:42:10

Junio C Hamano wrote:
Jeff Garzik [off-list ref] writes:

quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help