comparison mercurial/merge.py @ 30060:a145161debed

merge: use labels in subrepo merge This is the last place that doesn't respect conflict labels in merge output. Teach subrepos to use subrepo merge output too.
author Simon Farnsworth <simonfar@fb.com>
date Sat, 08 Oct 2016 01:25:28 -0700
parents 6f447b9ec263
children 98d3d8108db0
comparison
equal deleted inserted replaced
30059:6ffb7e0249f4 30060:a145161debed
1148 util.unlinkpath(repo.wjoin(f)) 1148 util.unlinkpath(repo.wjoin(f))
1149 1149
1150 numupdates = sum(len(l) for m, l in actions.items() if m != 'k') 1150 numupdates = sum(len(l) for m, l in actions.items() if m != 'k')
1151 1151
1152 if [a for a in actions['r'] if a[0] == '.hgsubstate']: 1152 if [a for a in actions['r'] if a[0] == '.hgsubstate']:
1153 subrepo.submerge(repo, wctx, mctx, wctx, overwrite) 1153 subrepo.submerge(repo, wctx, mctx, wctx, overwrite, labels)
1154 1154
1155 # remove in parallel (must come first) 1155 # remove in parallel (must come first)
1156 z = 0 1156 z = 0
1157 prog = worker.worker(repo.ui, 0.001, batchremove, (repo,), actions['r']) 1157 prog = worker.worker(repo.ui, 0.001, batchremove, (repo,), actions['r'])
1158 for i, item in prog: 1158 for i, item in prog:
1166 z += i 1166 z += i
1167 progress(_updating, z, item=item, total=numupdates, unit=_files) 1167 progress(_updating, z, item=item, total=numupdates, unit=_files)
1168 updated = len(actions['g']) 1168 updated = len(actions['g'])
1169 1169
1170 if [a for a in actions['g'] if a[0] == '.hgsubstate']: 1170 if [a for a in actions['g'] if a[0] == '.hgsubstate']:
1171 subrepo.submerge(repo, wctx, mctx, wctx, overwrite) 1171 subrepo.submerge(repo, wctx, mctx, wctx, overwrite, labels)
1172 1172
1173 # forget (manifest only, just log it) (must come first) 1173 # forget (manifest only, just log it) (must come first)
1174 for f, args, msg in actions['f']: 1174 for f, args, msg in actions['f']:
1175 repo.ui.debug(" %s: %s -> f\n" % (f, msg)) 1175 repo.ui.debug(" %s: %s -> f\n" % (f, msg))
1176 z += 1 1176 z += 1
1251 repo.ui.debug(" %s: %s -> m (premerge)\n" % (f, msg)) 1251 repo.ui.debug(" %s: %s -> m (premerge)\n" % (f, msg))
1252 z += 1 1252 z += 1
1253 progress(_updating, z, item=f, total=numupdates, unit=_files) 1253 progress(_updating, z, item=f, total=numupdates, unit=_files)
1254 if f == '.hgsubstate': # subrepo states need updating 1254 if f == '.hgsubstate': # subrepo states need updating
1255 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), 1255 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx),
1256 overwrite) 1256 overwrite, labels)
1257 continue 1257 continue
1258 audit(f) 1258 audit(f)
1259 complete, r = ms.preresolve(f, wctx) 1259 complete, r = ms.preresolve(f, wctx)
1260 if not complete: 1260 if not complete:
1261 numupdates += 1 1261 numupdates += 1