git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PoC PATCH JGIT 0/2] Proof of concept code for Git Freenet transport

From
DSDaniel Cheng (aka SDiZ) <j16sdiz+freenet-re5jqeeqqe8avxtiumwx3w@public.gmane.org>
Date
Mar 9, 2009, 03:36 UTC
Message-ID
<1236569765-8882-1-git-send-email-j16sdiz+freenet@gmail.com>
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://SSK@[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://SSK@[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   --> USK@..../test.git-objects-aa-bbbbbbb/-1/
   refs/heads/xxx        --> USK@..../test.git-objects-ref-heads-xxx/-1/
On pull:
   To support uploading from jSite, 
    when we load the info/refs we first check USK@..../test.git-info-refs/-1/
    if it is unavailiable, we would use USK@..../test.git/-1/info/refs
   The "traditional" type (USK@..../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?
Next: Johannes Schindelin
Message 1 of 6 in “Proof of concept code for Git Freenet transport”
  1. 0/2 Proof of concept code for Git Freenet transportDaniel Cheng (aka SDiZ), Mar 9, 2009
  2. Johannes SchindelinMar 9, 2009
  3. Shawn O. PearceMar 9, 2009
  4. 1/2 Freenet Freenet Client Protocol (FCP) 2.0 ClientDaniel Cheng (aka SDiZ), Mar 9, 2009
  5. 2/2 PoC Freenet transportDaniel Cheng (aka SDiZ), Mar 9, 2009
  6. Daniel ChengMar 9, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.