From: "Daniel Cheng (aka SDiZ)" <j16sdiz+freenet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: devl-RdDMkVZAZeuJnvDnx1genB2eb7JE58TQ@public.gmane.org,
git-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: [PoC PATCH JGIT 0/2] Proof of concept code for Git Freenet transport
Date: Mon, 9 Mar 2009 11:36:03 +0800 [thread overview]
Message-ID: <1236569765-8882-1-git-send-email-j16sdiz+freenet@gmail.com> (raw)
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 reply other threads:[~2009-03-09 3:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-09 3:36 Daniel Cheng (aka SDiZ) [this message]
[not found] ` <1236569765-8882-1-git-send-email-j16sdiz+freenet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-03-09 3:36 ` [PoC PATCH JGIT 1/2] Freenet Freenet Client Protocol (FCP) 2.0 Client Daniel Cheng (aka SDiZ)
[not found] ` <1236569765-8882-2-git-send-email-j16sdiz+freenet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2009-03-09 3:36 ` [PoC PATCH JGIT 2/2] PoC Freenet transport Daniel Cheng (aka SDiZ)
2009-03-09 5:58 ` [PoC PATCH JGIT 0/2] Proof of concept code for Git " Daniel Cheng
2009-03-09 9:58 ` Johannes Schindelin
2009-03-09 14:59 ` Shawn O. Pearce
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1236569765-8882-1-git-send-email-j16sdiz+freenet@gmail.com \
--to=j16sdiz+freenet-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=devl-RdDMkVZAZeuJnvDnx1genB2eb7JE58TQ@public.gmane.org \
--cc=git-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).