[PATCH 3 of 3] merge: change modified indicator to be 20 bytes
Augie Fackler
raf at durin42.com
Thu Nov 10 11:09:51 EST 2016
On Thu, Nov 10, 2016 at 03:01:06AM -0800, Durham Goode wrote:
> # HG changeset patch
> # User Durham Goode <durham at fb.com>
> # Date 1478773275 28800
> # Thu Nov 10 02:21:15 2016 -0800
> # Node ID 8ac2dc68fe618be09e4e069a111d6149e4844763
> # Parent 9b2f77c847a4dfc187b70c84caadebf41e8b248d
> merge: change modified indicator to be 20 bytes
Queued these, thanks
>
> Previously we indicated that the .hgsubstate file was dirty by adding a '+' to
> the end of its hash in the wctx manifest. This made is complicated to have new
> manifest implementations that rely on the node length being fixed.
>
> In previous patches we added added and modified node placeholders, so let's use
> those to indicate dirty here as well. It doesn't look like anything ever
> depended on this '+' (aside from it being different to the parent), so nothing
> else needed to change here.
>
> diff --git a/mercurial/merge.py b/mercurial/merge.py
> --- a/mercurial/merge.py
> +++ b/mercurial/merge.py
> @@ -18,6 +18,7 @@ from .node import (
> addednodeid,
> bin,
> hex,
> + modifiednodeid,
> nullhex,
> nullid,
> nullrev,
> @@ -815,7 +816,7 @@ def manifestmerge(repo, wctx, p2, pa, br
> if '.hgsubstate' in m1:
> # check whether sub state is modified
> if any(wctx.sub(s).dirty() for s in wctx.substate):
> - m1['.hgsubstate'] += '+'
> + m1['.hgsubstate'] = modifiednodeid
>
> # Compare manifests
> if matcher is not None:
More information about the Mercurial-devel
mailing list