Re: [RFC PATCH 07/15] cache_tree_update(): Capability to handle tree entries missing from index
n Sun, Sep 5, 2010 at 1:54 AM, Nguyen Thai Ngoc Duy <pclouds@gmail.com> wrote:
Show 19 quoted lines
> On Sun, Sep 5, 2010 at 10:13 AM, Elijah Newren <newren@gmail.com> wrote:
>> cache_tree_update() will write trees using the index. With sparse clones,
>> the index will only contain entries matching the sparse limits, meaning
>> that the index does not provide enough information to write complete tree
>> objects. Having cache_tree_update() take a tree (typically HEAD), will
>> allow new complete trees to be constructed by using entries from the
>> specified tree outside the sparse limits together with the index.
>
> You are moving it closer to the index (from my view because I changed
> in commit_tree()). This makes me think, why don't you move the base
> tree into the index itself?
>
> The index is supposed to save the image of full worktree. While you
> don't have all path names, you have the clue to all of them, the base
> tree. To me, that means it belongs to the index. That would reduce
> code change to
> - cache-tree.c (generate new tree from the base tree and index)
> - read-cache.c (new sparse-clone index extension)
> - index writing operations (save the base tree in index): read-tree and merge
That's a really good idea. I'll look into that.