[PATCH 2 of 3 stable] largefiles: mark lfile as added in lfdirstate when the standin is added
Matt Harbison
mharbison72 at gmail.com
Thu Jan 1 12:04:31 CST 2015
On Thu, 01 Jan 2015 12:26:43 -0500, Mads Kiilerich <mads at kiilerich.com>
wrote:
> On 01/01/2015 05:52 AM, FUJIWARA Katsunori wrote:
>> Oops, sorry for performance problem, and thank you for fixing it !
>
> Thanks for reviewing ;-)
>
> (Long term, I would like to get rid of the file status being duplicated
> for the standin in dirstate and the large file in lfdirstate. I think it
> would be better if lfdirstate only was used for keeping track of whether
> the largefile written/hashed by Mercurial has been changed by the user.
> My attempts at doing that have hover not been successful in all cases so
> far.)
>
> (Even more long term, I would like to move the largefiles into the
> normal dirstate (and contexts) so we could get rid of the complicated
> matcher handling.)
Do you have a strategy in mind for doing this? I recently hacked on the
lfilesctx class a bit to try to get filesets working properly (e.g.
set:size('>1M') never reports a largefile, because the standin is what is
tested), but that didn't seem to get anywhere. One of the problems is
that some commands (like files) does a dirstate lookup of the names
returned from a match... so I think this change has more benefits than
just avoiding complicated matcher handling.
I think this is something Greg mentioned a few years ago too, but I don't
know how to help it along.
--Matt
More information about the Mercurial-devel
mailing list