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

Re: git+http:// proof-of-concept (not using CONNECT)

From
EWEric Wong <normalperson@yhbt.net>
Date
Jul 3, 2009, 20:28 UTC
Message-ID
<20090703202839.GB12072@dcvr.yhbt.net>
In-Reply-To
<85647ef50907020252u41e36187jaacacad3d8a10f75@mail.gmail.com>
Constantine Plotnikov <constantine.plotnikov@gmail.com> wrote:
Show 13 quoted lines
> On Thu, Jul 2, 2009 at 12:54 PM, Eric Wong<normalperson@yhbt.net> wrote:
> > This doesn't work in the face of most HTTP-aware proxies[1], so it
> > probably doesn't help those who have trouble accessing git:// servers in
> > the first place...  However, this could potentially be useful in places
> > where a proxy providing CONNECT is not available.
> >
> The current lore is that to work with http proxies two separate
> streams are needed,
> one for input and one for outputs.
> 
> This technique is described at
> http://xmpp.org/extensions/xep-0124.html#technique
> and other places.

Actually, the problem with my approach here is that any HTTP proxies are free to rewrite chunked requests/responses to non-chunked ones (for compression, ssl, or even performance reasons). That and my approach requires both the client and server to be simutaneously sending and receiving responses in full-duplex channel which makes it impossible to work without chunking. IOW, there's no chance any HTTP proxy that dechunks or queues/coalesces chunked requests/responses can work with my approach.

The big upside is that only one HTTP request is needed for a full clone, making this the most efficient way of using git over HTTP so far :)

-- 
Eric Wong
Previous: Constantine PlotnikovNext: Tony Finch
Message 3 of 7 in “git+http:// proof-of-concept (not using CONNECT)”
  1. Eric WongJul 2, 2009
  2. Constantine PlotnikovJul 2, 2009
  3. Eric WongJul 3, 2009
  4. Tony FinchJul 7, 2009
  5. Eric WongJul 7, 2009
  6. Douglas CamposAug 26, 2009
  7. Eric WongSep 5, 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.