On Wednesday 11 March 2009 00:51:53 Daniel Cheng wrote:
> On Wed, Mar 11, 2009 at 7:33 AM, Matthew Toseland
> <[email protected]> wrote:
> > On Monday 09 March 2009 03:36:03 Daniel Cheng (aka SDiZ) wrote:
> >> Hi JGit / Freenet community,
> >>
> >> Here is some proof-of-concept code for Git-over-Freenet.
> >> I am sending this to see the feedback from communities.
> >>
> >> The code need some more cleanups, so it it is not ready for apply (yet).
> >>
> >> This is a real-life example
> >>
> >> Push:
> >>    $ git remote add fcp fcp://s...@[my public key]^[my private 
key]/test.git
> >>    $ ./jgit push fcp refs/remotes/origin/stable:refs/heads/master
> >>
> >>  /ALTERNATIVLY/
> >>
> >>    Insert a bare repository under USK@<.....>/test.git/-1/
> >>
> >> Pull:
> >>  $ ./jgit clone fcp://s...@[my public key]^[my private key]/test.git
> >>
> >>
> >> To workaround the metadata update problem, this client translate the
> >> path seperator to "-", that means:
> >>
> >> On push:
> >>    objects/aa/bbbbbbbb   --> u...@..../test.git-objects-aa-bbbbbbb/-1/
> >>    refs/heads/xxx        --> u...@..../test.git-objects-ref-heads-xxx/-1/
> >>
> >> On pull:
> >>    To support uploading from jSite,
> >>     when we load the info/refs we first check
> > u...@..../test.git-info-refs/-1/
> >>     if it is unavailiable, we would use u...@..../test.git/-1/info/refs
> >>
> >>    The "traditional" type (u...@..../test.git/-1/objects) repository is
> >>    always added as an alternative objects database. No other
> > info/alternatives
> >>    are supported
> >>
> >> FIXME:
> >>  - How to store the private key of repository?
> >>    Currently, we use URI of form fcp://SSK@<public key>^<private
> > key>/some-id
> >>    This is quite ugly. Could we use a per remote Config ? How can I get
> > remote
> >>    name from transport?
> >>
> >>  - Make pushing async, could we?
> >
> > Very nice. To be clear, the "alternative object repository" is what you 
get
> > when you insert the whole thing with jSite? Which it is recommended you do
> > occasionally for longevity?
> 
> "alternative object repository" is a git term (and most git user never
> use, or even heard about it)
> Basically, if it can't find an object in
> u...@..../xx.git-objects-packs-pack-xxxx.pack/1/ ,
> it will try u...@..../xx.git/1/objects/xx/xxxxxx  and then
> u...@..../xx.git/1/objects/packs/pack-xxxx.pack/ .
> 
> I think we should use this only _only_ when we are initializing a
> large repository,
> or try to recover from file fall out from the network.

Well, if it is used rarely then it will fall out... dunno what the best way 
forward is...

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Devl mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to