From: Mike Hommey Date: Tue, 08 Jul 2008 05:56:10 GMT Subject: Re: git push to amazon s3 [was: [GSoC] What is status of Git's Google Summer of Code 2008 projects?] Message-ID: <20080708055610.GA12591@glandium.org> In-Reply-To: <905315640807072248w44ccdc4y2f1cf54a10c50c43@mail.gmail.com> On Mon, Jul 07, 2008 at 10:48:59PM -0700, Tarmigan wrote: > (trimmed cc list to folks who've touched http-push.c) > > On Mon, Jul 7, 2008 at 9:19 PM, Shawn O. Pearce wrote: > > Using Marek's pack generation code I added support for push over > > the dumb sftp:// and amazon-s3:// protocols, with the latter also > > supporting transparent client side encryption. > > > > I chose to add these features to jgit partly as an exercise to prove > > that Marek's code was built well enough to be reused for this task, > > partly because I wanted to backup some private personal repositories > > to Amazon S3, and partly to prove that multiple dumb transports > > could implement push support. > > That sounds cool. I've been looking into adding s3 push into cgit, > and was looking into modifying http-push.c, but got in over my head. > I had trouble trying to make it fit into the DAV model that http-push > is built around, in part because s3 doesn't seem to support any > locking and a lot of the http-push code seems to be around the > locking. > > Can you describe the s3 support that you added? Did you do any > locking when you pushed? The objects and packs seem likely to be > naturally OK, but I was worried about refs/ and especially > objects/info/packs and info/refs (fetch over http works currently out > of the box with publicly accessable s3 repos). FWIW, I'm starting to work again on the http backend overhaul. My idea is to provide a generic dumb protocol vfs-like interface, so that other dumb protocols could be built out of it. Mike