Subject: Re: Feedback outside of the user survey

From: Andreas Ericsson <[email-masked]>
Date: Mon, 20 Oct 2008 18:11:12 +0200

Christian Jaeger wrote:
> Andreas Ericsson wrote:
>> 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".

"or end up transferring all objects on the wire anyway".

> 
>> 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.
> 

Then you'll be transferring all objects over the wire anyway, so there
goes that idea.

>> 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.
> 

That's partially implemented, I think (google for Nguy (or something, I'm
not very god with asian names), but your original suggestion said to save
on transferring objects from one machine to another, which will play poorly
with git's object database and which you're now arguing against.

Please make up your mind.

-- 
Andreas Ericsson                   [email-masked]
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231