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

Re: Feedback outside of the user survey

From
CJChristian Jaeger <christian@jaeger.mine.nu>
Date
Oct 20, 2008, 15:20 UTC
Message-ID
<48FCA1BC.3060300@jaeger.mine.nu>
In-Reply-To
<48FC9D87.3010303@op5.se>
Andreas Ericsson wrote:
Show 22 quoted lines
> Christian Jaeger wrote:
>> Andreas Ericsson wrote:
>>> Christian Jaeger wrote:
>>>> If you really wanted, I suppose you could additionally look into 
>>>> implementing a kind of shallow cloning that only copies objects 
>>>> over the wire which are necessary for representing the subdirectory 
>>>> you're interested in.
>>>>
>>>
>>> So what do you do when one such commit also affects something outside
>>> the subdirectory?
>>
>> You haven't said what you mean with "affect".
>>
>
> I mean "how would you handle a commit (and its tree-object) that updates
> all Makefiles in, for example, the Linux kernel project?". Those files
> are spread far and wide, and you'd want that change to *your* tree, but
> getting it into your tree either means you need to rewrite the tree (and
> thereby the commit) itself to get rid of uninteresting blob's from the
> tree, and you'd also have to prune the tree to not reveal the directory
> layout of the rest of the repository.
You have said "either" but not "or".
> I take it parentage could be resolved by a ridiculously large 
> grafts-file.

Hm, not sure whether you mean to rescue the situation with rewritten commits here -- but hell no, I certainly don't mean to have different commit objects for different clones/checkouts.

> What you'd end up with wouldn't be a git repository at all anymore. It
> would be a "stump", as it'd be missing large parts of the tree entirely.
That was my point, yes.
> I'm unsure just how much you'd have to compute to be able to use such a
> stump to incorporate your changes with other users again, but I doubt it
> would be trivial to implement. Good thing it's not my itch, really.
I've been suggesting it to Garry :)

Maybe whoever writes up something on the wiki regarding subdirectory checkouts in SVN versus Git could still care about what the "fundamental technical" limits are versus what the current implementation (or practicalness) imposes. It will be both a more enlightening and potentially more future-proof explanation then.

Christian.
Previous: Andreas EricssonNext: Andreas Ericsson
Message 12 of 17 in “Feedback outside of the user survey”
  1. Richard HartmannOct 16, 2008
  2. Jeff KingOct 16, 2008
  3. Richard HartmannOct 16, 2008
  4. Garry DolleyOct 16, 2008
  5. Richard HartmannOct 16, 2008
  6. Christian JaegerOct 16, 2008
  7. Garry DolleyOct 18, 2008
  8. Christian JaegerOct 18, 2008
  9. Andreas EricssonOct 20, 2008
  10. Christian JaegerOct 20, 2008
  11. Andreas EricssonOct 20, 2008
  12. Christian JaegerOct 20, 2008
  13. Andreas EricssonOct 20, 2008
  14. Christian JaegerOct 20, 2008
  15. Christian JaegerOct 20, 2008
  16. Junio C HamanoOct 20, 2008
  17. Christian JaegerOct 21, 2008

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.