[PATCH 1 of 8] largefiles: replace "_isXXXXing" attributes with "_lfautocommit"

Mads Kiilerich mads at kiilerich.com
Mon Sep 22 12:18:31 CDT 2014


On 09/22/2014 07:02 PM, Sean Farley wrote:
> Mads Kiilerich writes:
>
>> I wonder if we should try a different approach. As you point out, it is
>> almost impossible to do the right thing in the internal commit functions
>> - they don't have enough context. One alternative could be to hook in at
>> the very low level, updating the standin files whenever they are read
>> and propagate their change whenever they are written. Another approach
>> would be to do all synchronization before/after calling in to core
>> Mercurial and let the core pretty much treat standin files like any
>> other file. I have played around with that approach and posted a proof
>> of concept.
> Just a shot in the dark here, but what about using a custom context
> object (that will soon grow a commit method)?

I doubt that would help.

The problem (or a part of it) is that commands like rebase, transplant 
and histedit do several commits and updates - and that it is quite a bit 
blurry when they should propagate largefiles to standins or the other 
way around. I guess it would require quite a bit of largefile awareness 
in creation/initialization of these context objects to handle that 
"correctly".

/Mads


More information about the Mercurial-devel mailing list