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

Re: Two gitweb feature requests

From
Linus Torvalds <torvalds@osdl.org>
Date
Apr 28, 2006, 18:23 UTC
Message-ID
<Pine.LNX.4.64.0604281116020.3701@g5.osdl.org>
In-Reply-To
<e2tjqm$83n$1@sea.gmane.org>
On Fri, 28 Apr 2006, Jakub Narebski wrote:
Show 5 quoted lines
>
> I'd like to have 'parent directory' link for trees ('..' link) at the top of
> it's contents. I know it is possible to use browser history for that, but
> it would give greater similarity with 'directory listing' mode of WWW
> servers.

Well, a git "tree" doesn't actually _have_ a parent. It potentially has multiple.

So to get to "a parent", you literally do need to keep track of how you got to the tree. Which is certainly possible (maybe it even ends up being in the URI that gitk generates, I didn't check), but basically, if it isn't tracked explicitly, it basically is impossible to find.

Not having back-pointers is what allows git to do data sharing and a lot of other things efficiently. A tree is a tree is a tree, and has zero data about what points to it, so as long as the _contents_ of a tree are the same, you have exactly the same object. That means that the same subtree can - and will - be pointed to by multiple upper-level trees and commits.

So you do need that "browser history" one way or another. Either in the browser (use the "back button") or by encoding the "how did we get here" information in the URI and the dynamically generated page content.

The downside is that you'd have two different web-pages for the same tree depending on which commit it came from. Which is not a downside from a user perspective, but it's a downside from a caching/server perspective, since it means less reuse of pages (maybe gitweb already does that, though).

		Linus
Previous: Jakub NarebskiNext: Jakub Narebski
Message 8 of 11 in “Two gitweb feature requests”
  1. David WoodhouseApr 27, 2006
  2. Matthias LederhoferApr 27, 2006
  3. David WoodhouseApr 27, 2006
  4. Ben CliffordApr 27, 2006
  5. David WoodhouseApr 29, 2006
  6. seanApr 28, 2006
  7. Jakub NarebskiApr 28, 2006
  8. Linus TorvaldsApr 28, 2006
  9. Jakub NarebskiApr 28, 2006
  10. Jeff KingApr 29, 2006
  11. Jakub NarebskiApr 29, 2006

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.