comparison mercurial/cmdutil.py @ 44856:b7808443ed6a

mergestate: split out merge state handling code from main merge module There's already some pretty reasonable encapsulation here, but I want to make the mergestate storage a property of the context so memctx instances can do a reasonable thing. This is the first step in a reshuffle to make that easier. Differential Revision: https://phab.mercurial-scm.org/D8550
author Augie Fackler <augie@google.com>
date Mon, 18 May 2020 14:59:59 -0400
parents 16596f5e1afa
children 065421e12248
comparison
equal deleted inserted replaced
44855:1d2d353e5c4a 44856:b7808443ed6a
36 error, 36 error,
37 formatter, 37 formatter,
38 logcmdutil, 38 logcmdutil,
39 match as matchmod, 39 match as matchmod,
40 merge as mergemod, 40 merge as mergemod,
41 mergestate as mergestatemod,
41 mergeutil, 42 mergeutil,
42 obsolete, 43 obsolete,
43 patch, 44 patch,
44 pathutil, 45 pathutil,
45 phases, 46 phases,
888 889
889 890
890 def readmorestatus(repo): 891 def readmorestatus(repo):
891 """Returns a morestatus object if the repo has unfinished state.""" 892 """Returns a morestatus object if the repo has unfinished state."""
892 statetuple = statemod.getrepostate(repo) 893 statetuple = statemod.getrepostate(repo)
893 mergestate = mergemod.mergestate.read(repo) 894 mergestate = mergestatemod.mergestate.read(repo)
894 activemerge = mergestate.active() 895 activemerge = mergestate.active()
895 if not statetuple and not activemerge: 896 if not statetuple and not activemerge:
896 return None 897 return None
897 898
898 unfinishedop = unfinishedmsg = unresolved = None 899 unfinishedop = unfinishedmsg = unresolved = None
3125 # amend should abort if commitsubrepos is enabled 3126 # amend should abort if commitsubrepos is enabled
3126 assert not commitsubs 3127 assert not commitsubs
3127 if subs: 3128 if subs:
3128 subrepoutil.writestate(repo, newsubstate) 3129 subrepoutil.writestate(repo, newsubstate)
3129 3130
3130 ms = mergemod.mergestate.read(repo) 3131 ms = mergestatemod.mergestate.read(repo)
3131 mergeutil.checkunresolved(ms) 3132 mergeutil.checkunresolved(ms)
3132 3133
3133 filestoamend = {f for f in wctx.files() if matcher(f)} 3134 filestoamend = {f for f in wctx.files() if matcher(f)}
3134 3135
3135 changes = len(filestoamend) > 0 3136 changes = len(filestoamend) > 0