[Request] [+ ] D8551: context: implement mergestate() method
durin42 (Augie Fackler)
phabricator at mercurial-scm.org
Mon May 18 22:08:24 UTC 2020
durin42 created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REVISION SUMMARY
This will let us have the mergestate storage be controlled by the context. In
particular, for working contexts we should use the existing mergestate, but
for overlay contexts it's inappropriate to drop files in .hg/merge.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D8551
AFFECTED FILES
mercurial/context.py
CHANGE DETAILS
diff --git a/mercurial/context.py b/mercurial/context.py
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -34,6 +34,7 @@
error,
fileset,
match as matchmod,
+ mergestate as mergestatemod,
obsolete as obsmod,
patch,
pathutil,
@@ -474,6 +475,12 @@
return r
+ def mergestate(self, clean=False):
+ """Get a mergestate object for this context."""
+ raise NotImplementedError(
+ '%s does not implement mergestate()' % self.__class__
+ )
+
class changectx(basectx):
"""A changecontext object makes access to data related to a particular
@@ -2003,6 +2010,11 @@
sparse.aftercommit(self._repo, node)
+ def mergestate(self, clean=False):
+ if clean:
+ return mergestatemod.mergestate.clean(self._repo)
+ return mergestatemod.mergestate.read(self._repo)
+
class committablefilectx(basefilectx):
"""A committablefilectx provides common functionality for a file context
To: durin42, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mercurial-scm.org/pipermail/mercurial-patches/attachments/20200518/277a9385/attachment-0001.html>
More information about the Mercurial-patches
mailing list