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

Gitweb != HTTP back-end {Was: Re: The future of gitweb - part 2: JavaScript}

From
Drew Northup <drew.northup@maine.edu>
Date
Apr 20, 2011, 18:24 UTC
Message-ID
<1303323892.20895.22.camel@drew-northup.unet.maine.edu>
In-Reply-To
<201104171211.14118.jnareb@gmail.com>
On Sun, 2011-04-17 at 12:11 +0200, Jakub Narebski wrote:
> On Sun, 17 Apr 2011, Peter Vereshagin wrote:
> > 2011/04/17 00:19:07 +0200 Jakub Narebski <jnareb@gmail.com> => To Peter Vereshagin :
Show 15 quoted lines
> > JN> > - the routing of the request, the deciding what to do with the particular
> > JN> >   HTTP request, becomes more obfuscated. First, web server decides what CGI
> > JN> >   should approve it. Plus two more decision makers are those 2 CGI, all different.
> > JN> > 
> > JN> > It's just why I never supposed git to have 2 different native web interfaces,
> > JN> > especially in sight of plumbing vs porcelain contrast in cli, sorry for
> > JN> > confusion.
> > JN> 
> > JN> Those are not two _web interfaces_.  Gitweb is one of web interfaces
> > JN> to git repositories; more at
> > JN>   https://git.wiki.kernel.org/index.php/Interfaces,_frontends,_and_tools#Web_Interfaces
> > JN> 
> > JN> Fetching and pushing via HTTP is not web interface, is HTTP _transport_.
> > 
> > But HTTP is an application protocol, not a transport protocol.

Forgive me, but this is seriously off-base. HTTP := Hyper-Text Transport Protocol. It is a generic, stateless, way of moving text (Base-64 encoded for binary data) over the wire. Sure, the ISO/OSI model may classify it as an "application," but that term does not mean the same thing in all contexts. As far as Git is concerned it is a transport; as far as the ISO/OSI model of networking is concerned it is an application. We aren't talking here about the latter. Or perhaps you are confusing an HTTP-speaking "application" (Gitweb) and the Git-over-HTTP back-end. They do not have the same purpose. As far as I'm aware only the "cgit" web interface supports the Git-over-HTTP "client" directly (and only the dumb one apparently). This may be what has you confused.

> 
> Fetching via "smart" HTTP protocol is actually git-over-http, with
> some extra work due to the fact that HTTP is stateless.
...and Base-64 encoded, and chunked, and so on...
None of this has anything to do with Javascript.
-- 
-Drew Northup
________________________________________________
"As opposed to vegetable or mineral error?"
-John Pescatore, SANS NewsBites Vol. 12 Num. 59
Previous: Jakub NarebskiNext: Jakub Narebski
Message 20 of 30 in “The future of gitweb (long term goals)”
  1. Jakub NarebskiFeb 14, 2011
  2. Michael J GruberFeb 15, 2011
  3. Jakub NarebskiFeb 21, 2011
  4. Michael J GruberFeb 23, 2011
  5. The future of git-instaweb (was: Re: The future of gitweb (long term goals))Jakub Narebski, Feb 25, 2011
  6. Ævar Arnfjörð BjarmasonFeb 22, 2011
  7. Jakub NarebskiFeb 22, 2011
  8. The future of gitweb - part 2: JavaScriptJakub Narebski, Apr 14, 2011
  9. Michał ŁowickiApr 14, 2011
  10. david@lang.hmApr 15, 2011
  11. Peter VereshaginApr 16, 2011
  12. Jakub NarebskiApr 16, 2011
  13. Peter VereshaginApr 16, 2011
  14. Jakub NarebskiApr 16, 2011
  15. Peter VereshaginApr 16, 2011
  16. Jakub NarebskiApr 16, 2011
  17. Jakub NarebskiApr 16, 2011
  18. Peter VereshaginApr 16, 2011
  19. Jakub NarebskiApr 17, 2011
  20. Gitweb != HTTP back-end {Was: Re: The future of gitweb - part 2: JavaScript}Drew Northup, Apr 20, 2011
  21. Jakub NarebskiApr 20, 2011
  22. Pau Garcia i QuilesApr 16, 2011
  23. Jakub NarebskiApr 17, 2011
  24. Pau Garcia i QuilesApr 17, 2011
  25. Jakub NarebskiApr 18, 2011
  26. Petr BaudisApr 17, 2011
  27. Jakub NarebskiApr 18, 2011
  28. Petr BaudisApr 18, 2011
  29. Jakub NarebskiApr 18, 2011
  30. Drew NorthupApr 20, 2011

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.