[PATCH 2 of 3 stable] largefiles: mark lfile as added in lfdirstate when the standin is added

Mads Kiilerich mads at kiilerich.com
Thu Jan 1 14:44:24 CST 2015

On 01/01/2015 07:04 PM, Matt Harbison wrote:
> On Thu, 01 Jan 2015 12:26:43 -0500, Mads Kiilerich 
> <mads at kiilerich.com> wrote:
>> (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 don't think there is any special tricks. I would try to "inject" 
largefiles into changectx when standins are read and remove them again 
on commit ... with proper synchronization of file content and hashes and 
modes. I expect it would be a lot of work to remove or tweak the 
existing hacks ... and to address showstoppers that will show up. The 
largefiles hacks are getting more and more correct and we keep improving 
the test coverage so I think we are on track.


More information about the Mercurial-devel mailing list