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. . _______________________________________________ Devl mailing list [email protected] http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
